mysql-effect 0.1.0.0 → 0.2.0.2
raw patch · 3 files changed
+17/−17 lines, 3 filesdep +mysqldep ~basedep ~extensible-effects
Dependencies added: mysql
Dependency ranges changed: base, extensible-effects
Files
- mysql-effect.cabal +9/−3
- src/Control/Eff/MySQL.hs +5/−11
- src/Control/Eff/MySQL/Helper.hs +3/−3
mysql-effect.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: mysql-effect-version: 0.1.0.0+version: 0.2.0.2 synopsis: An extensible mysql effect using extensible-effects and mysql-simple description: Any help (especially documentation) is very welcome, homepage: https://github.com/ibotty/mysql-effect@@ -20,9 +20,15 @@ exposed-modules: Control.Eff.MySQL other-modules: Control.Eff.MySQL.Helper -- other-extensions: - build-depends: base >=4.6 && <4.7+ build-depends: base >=4.6 && <4.8 , bytestring - , extensible-effects >=1.2 && <1.3+ , extensible-effects ==1.4.* || ==1.7.* , mysql-simple >=0.2 && <0.3+ , mysql >=0.1.1.6 hs-source-dirs: src default-language: Haskell2010++source-repository head+ type: git+ location: https://github.com/ibotty/mysql-effect+
src/Control/Eff/MySQL.hs view
@@ -1,7 +1,5 @@-{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE TypeOperators #-}-{-# LANGUAGE StandaloneDeriving #-} -- | A thin MySQL effect. -- -- See the documentation of 'mysql-simple' for details regarding the@@ -42,17 +40,13 @@ import Control.Eff.Reader.Strict import Data.ByteString (ByteString) import Data.Int (Int64)-import Data.Typeable (Typeable) import Data.Word (Word64) import qualified Database.MySQL.Simple as M import qualified Database.MySQL.Simple.QueryParams as M import qualified Database.MySQL.Simple.QueryResults as M - type MySQL = Reader M.Connection -deriving instance Typeable M.Connection- -- | Run the MySQL effect. In case of exceptions it will not close the -- connection. (That will still be done by the GC at one point.) runMySQL@@ -83,19 +77,19 @@ -- -- | See 'M.fold' for details. -- fold--- :: (SetMember Lift (Lift IO) r, Member MySQL r, M.QueryResults b, M.QueryParams p)+-- :: (Member (Lift IO) r, Member MySQL r, M.QueryResults b, M.QueryParams p) -- => M.Query -> p -> a -> (a -> b -> Eff r a) -> Eff r [a] -- -- | See 'M.fold_' for details. -- fold_--- :: (SetMember Lift (Lift IO) r, Member MySQL r, M.QueryResults b)+-- :: (Member (Lift IO) r, Member MySQL r, M.QueryResults b) -- => M.Query -> q -> a -> (a -> b -> Eff r a) -> Eff r [a] -- -- | See 'M.forEach' for details. -- forEach--- :: (SetMember Lift (Lift IO) r, Member MySQL r, M.QueryResults b, M.QueryParams p)+-- :: (Member (Lift IO) r, Member MySQL r, M.QueryResults b, M.QueryParams p) -- => M.Query -> p -> (b -> Eff r ()) -> Eff r () -- -- | See 'M.forEach_' for details. -- forEach_--- :: (SetMember Lift (Lift IO) r, Member MySQL r, M.QueryResults b)+-- :: (Member (Lift IO) r, Member MySQL r, M.QueryResults b) -- => M.Query -> (b -> Eff r ()) -> Eff r () -- | See 'M.execute' for details.@@ -122,7 +116,7 @@ -- -- | See 'M.withTransaction' for details. -- withTransaction--- :: (SetMember Lift (Lift IO) r, Member MySQL r)+-- :: (Member (Lift IO) r, Member MySQL r) -- => Eff r a -> Eff r a -- | See 'M.autocommit ' for details.
src/Control/Eff/MySQL/Helper.hs view
@@ -6,9 +6,9 @@ , askLift3 ) where -import Control.Eff-import Control.Eff.Lift-import Control.Eff.Reader.Strict+import Control.Eff (Eff, Member, SetMember)+import Control.Eff.Lift (Lift, lift)+import Control.Eff.Reader.Strict (Reader, ask) import Data.Typeable (Typeable, Typeable1) askLift0