transformers-base 0.4.4 → 0.4.6.1
raw patch · 3 files changed
Files
- README.md +17/−0
- src/Control/Monad/Base.hs +30/−13
- transformers-base.cabal +16/−5
+ README.md view
@@ -0,0 +1,17 @@+Transformers-Base+=================++[](https://github.com/mvv/transformers-base/actions/workflows/ci.yml) [](http://hackage.haskell.org/package/transformers-base)++This package provides a straightforward port of [monadLib][monadLib]'s BaseM+typeclass to [transformers][transformers].++[monadLib]: http://hackage.haskell.org/package/monadLib+[transformers]: http://hackage.haskell.org/package/transformers++Installation+------------+The usual:++ $ cabal install+
src/Control/Monad/Base.hs view
@@ -19,13 +19,10 @@ , liftBaseDefault ) where -import Data.Monoid import Data.Functor.Identity-import Control.Applicative (Applicative(..)) import Control.Monad.Trans.Class import Control.Monad.Trans.Identity import Control.Monad.Trans.Maybe-import Control.Monad.Trans.List import Control.Monad.Trans.Reader import qualified Control.Monad.Trans.Writer.Lazy as L import qualified Control.Monad.Trans.Writer.Strict as S@@ -33,17 +30,35 @@ import qualified Control.Monad.Trans.State.Strict as S import qualified Control.Monad.Trans.RWS.Lazy as L import qualified Control.Monad.Trans.RWS.Strict as S+#if MIN_VERSION_transformers(0,5,6)+import qualified Control.Monad.Trans.Writer.CPS as C+import qualified Control.Monad.Trans.RWS.CPS as C+#endif+#if !MIN_VERSION_transformers(0,6,0)+import Control.Monad.Trans.List import Control.Monad.Trans.Error+#endif import Control.Monad.Trans.Cont import Control.Monad.Trans.Except+import Control.Monad.Trans.Accum+import Control.Monad.Trans.Select+#if !MIN_VERSION_base(4,8,0)+import Data.Monoid+import Control.Applicative (Applicative(..))+#endif #if !MIN_VERSION_base(4,4,0) && HS_TRANSFORMERS_BASE__ORPHANS-import Control.Monad (ap) import qualified Control.Monad.ST.Lazy as L import qualified Control.Monad.ST.Strict as S+import Data.Orphans () #endif #if MIN_VERSION_base(4,4,0)+# if MIN_VERSION_base(4,8,0)+import qualified Control.Monad.ST.Lazy as L+import qualified Control.Monad.ST.Strict as S+# else import qualified Control.Monad.ST.Lazy.Safe as L import qualified Control.Monad.ST.Safe as S+# endif #endif import Control.Monad.STM (STM) @@ -65,14 +80,6 @@ BASE(STM) #if !MIN_VERSION_base(4,4,0) && HS_TRANSFORMERS_BASE__ORPHANS-instance Applicative (L.ST s) where- pure = return- (<*>) = ap--instance Applicative (S.ST s) where- pure = return- (<*>) = ap- BASE(L.ST s) BASE(S.ST s) #endif@@ -95,12 +102,15 @@ TRANS(IdentityT) TRANS(MaybeT)-TRANS(ListT) TRANS(ReaderT r) TRANS(L.StateT s) TRANS(S.StateT s) TRANS(ContT r) TRANS(ExceptT e)+TRANS(SelectT r)+#if !MIN_VERSION_transformers(0,6,0)+TRANS(ListT)+#endif #undef TRANS #define TRANS_CTX(CTX, T) \@@ -110,5 +120,12 @@ TRANS_CTX(Monoid w, S.WriterT w) TRANS_CTX(Monoid w, L.RWST r w s) TRANS_CTX(Monoid w, S.RWST r w s)+#if MIN_VERSION_transformers(0,5,6)+TRANS_CTX(Monoid w, C.WriterT w)+TRANS_CTX(Monoid w, C.RWST r w s)+#endif+#if !MIN_VERSION_transformers(0,6,0) TRANS_CTX(Error e, ErrorT e)+#endif+TRANS_CTX(Monoid w, AccumT w) #undef TRANS_CTX
transformers-base.cabal view
@@ -1,5 +1,5 @@ Name: transformers-base-Version: 0.4.4+Version: 0.4.6.1 Category: Control Stability: experimental Synopsis: Lift computations from the bottom of a transformer stack@@ -20,7 +20,15 @@ License: BSD3 License-File: LICENSE -Cabal-Version: >= 1.6.0+Extra-Source-Files:+ README.md++Tested-With: GHC==7.0.4, GHC==7.4.2, GHC==7.6.3, GHC==7.8.4, GHC==7.10.3,+ GHC==8.0.2, GHC==8.2.2, GHC==8.4.4, GHC==8.6.5, GHC==8.8.4,+ GHC==8.10.7, GHC==9.0.2, GHC==9.2.8, GHC==9.4.8, GHC==9.6.7,+ GHC==9.8.4, GHC==9.10.3, GHC==9.12.2++Cabal-Version: >= 1.10 Build-Type: Simple Source-Repository head@@ -29,18 +37,21 @@ Flag OrphanInstances Description:- Declare orphan Applicative instances for lazy and strict ST if needed+ Import orphan Applicative instances for lazy and strict ST if needed Default: True Library+ Default-Language: Haskell2010 Build-Depends:- base >= 3 && < 5,+ base >= 3 && < 5 && (< 4.4 || >= 4.5), stm >= 2.3, transformers >= 0.2,- transformers-compat >= 0.2+ transformers-compat >= 0.6.1 Hs-Source-Dirs: src GHC-Options: -Wall if flag(OrphanInstances)+ Build-Depends:+ base-orphans >= 0.3 CPP-Options: -DHS_TRANSFORMERS_BASE__ORPHANS=1 else CPP-Options: -DHS_TRANSFORMERS_BASE__ORPHANS=0