list-transformer 1.1.0 → 1.1.1
raw patch · 3 files changed
+13/−1 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- List.Transformer: class MFunctor (t :: Type -> Type -> k -> Type)
+ List.Transformer: class () => MFunctor (t :: Type -> Type -> k -> Type)
- List.Transformer: class MonadTrans (t :: Type -> Type -> Type -> Type)
+ List.Transformer: class forall (m :: Type -> Type). Monad m => Monad t m => MonadTrans (t :: Type -> Type -> Type -> Type)
Files
- CHANGELOG.md +4/−0
- list-transformer.cabal +1/−1
- src/List/Transformer.hs +8/−0
CHANGELOG.md view
@@ -1,3 +1,7 @@+1.1.1++- Support older versions of `base`+ 1.1.0: - BREAKING CHANGE: Remove `MonadTrans` instance for `ZipListT`
list-transformer.cabal view
@@ -1,5 +1,5 @@ name: list-transformer-version: 1.1.0+version: 1.1.1 synopsis: List monad transformer description: This library provides a list monad transformer that enriches lists with effects and streams efficiently in
src/List/Transformer.hs view
@@ -373,7 +373,11 @@ state k = lift (state k) instance MFunctor ListT where+#if MIN_VERSION_base(4,8,0) hoist f xs = ListT (f (fmap (hoist f) (next xs)))+#else+ hoist f xs = ListT (f (next xs >>= \x -> return (hoist f x)))+#endif instance (Monad m, Num a) => Num (ListT m a) where fromInteger n = pure (fromInteger n)@@ -823,5 +827,9 @@ instance Monad m => Applicative (ZipListT m) where pure x = ZipListT go where+#if MIN_VERSION_base(4,8,0) go = ListT (pure (Cons x go))+#else+ go = ListT (return (Cons x go))+#endif ZipListT fs <*> ZipListT xs = ZipListT (fmap (uncurry ($)) (zip fs xs))