monad-coroutine 0.9.0.1 → 0.9.0.2
raw patch · 2 files changed
+4/−6 lines, 2 filesdep ~monad-paralleldep ~transformers-compatPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: monad-parallel, transformers-compat
API changes (from Hackage documentation)
- Control.Monad.Coroutine: instance (Functor s, Functor m) => Functor (Coroutine s m)
- Control.Monad.Coroutine: instance (Functor s, Functor m, Monad m) => Applicative (Coroutine s m)
- Control.Monad.Coroutine: instance (Functor s, Monad m) => Monad (Coroutine s m)
- Control.Monad.Coroutine: instance (Functor s, MonadIO m) => MonadIO (Coroutine s m)
- Control.Monad.Coroutine: instance (Functor s, MonadParallel m) => MonadParallel (Coroutine s m)
- Control.Monad.Coroutine: instance Functor Naught
- Control.Monad.Coroutine: instance Functor s => MonadTrans (Coroutine s)
- Control.Monad.Coroutine: resume :: Coroutine s m r -> m (Either (s (Coroutine s m r)) r)
- Control.Monad.Coroutine.Nested: instance [overlap ok] (Functor a, ChildFunctor d, d' ~ Parent d, AncestorFunctor a d') => AncestorFunctor a d
- Control.Monad.Coroutine.Nested: instance [overlap ok] (Functor p, Functor s) => ChildFunctor (Sum p s)
- Control.Monad.Coroutine.Nested: instance [overlap ok] Functor a => AncestorFunctor a a
- Control.Monad.Coroutine.SuspensionFunctors: instance Functor (Await x)
- Control.Monad.Coroutine.SuspensionFunctors: instance Functor (ReadRequest x)
- Control.Monad.Coroutine.SuspensionFunctors: instance Functor (Request x f)
- Control.Monad.Coroutine.SuspensionFunctors: instance Functor (Yield x)
+ Control.Monad.Coroutine: [resume] :: Coroutine s m r -> m (Either (s (Coroutine s m r)) r)
+ Control.Monad.Coroutine: instance (GHC.Base.Functor s, Control.Monad.IO.Class.MonadIO m) => Control.Monad.IO.Class.MonadIO (Control.Monad.Coroutine.Coroutine s m)
+ Control.Monad.Coroutine: instance (GHC.Base.Functor s, Control.Monad.Parallel.MonadParallel m) => Control.Monad.Parallel.MonadParallel (Control.Monad.Coroutine.Coroutine s m)
+ Control.Monad.Coroutine: instance (GHC.Base.Functor s, GHC.Base.Functor m) => GHC.Base.Functor (Control.Monad.Coroutine.Coroutine s m)
+ Control.Monad.Coroutine: instance (GHC.Base.Functor s, GHC.Base.Functor m, GHC.Base.Monad m) => GHC.Base.Applicative (Control.Monad.Coroutine.Coroutine s m)
+ Control.Monad.Coroutine: instance (GHC.Base.Functor s, GHC.Base.Monad m) => GHC.Base.Monad (Control.Monad.Coroutine.Coroutine s m)
+ Control.Monad.Coroutine: instance GHC.Base.Functor Control.Monad.Coroutine.Naught
+ Control.Monad.Coroutine: instance GHC.Base.Functor s => Control.Monad.Trans.Class.MonadTrans (Control.Monad.Coroutine.Coroutine s)
+ Control.Monad.Coroutine.Nested: instance (GHC.Base.Functor a, Control.Monad.Coroutine.Nested.ChildFunctor d, d' ~ Control.Monad.Coroutine.Nested.Parent d, Control.Monad.Coroutine.Nested.AncestorFunctor a d') => Control.Monad.Coroutine.Nested.AncestorFunctor a d
+ Control.Monad.Coroutine.Nested: instance (GHC.Base.Functor p, GHC.Base.Functor s) => Control.Monad.Coroutine.Nested.ChildFunctor (Data.Functor.Sum.Sum p s)
+ Control.Monad.Coroutine.Nested: instance GHC.Base.Functor a => Control.Monad.Coroutine.Nested.AncestorFunctor a a
+ Control.Monad.Coroutine.SuspensionFunctors: instance GHC.Base.Functor (Control.Monad.Coroutine.SuspensionFunctors.Await x)
+ Control.Monad.Coroutine.SuspensionFunctors: instance GHC.Base.Functor (Control.Monad.Coroutine.SuspensionFunctors.ReadRequest x)
+ Control.Monad.Coroutine.SuspensionFunctors: instance GHC.Base.Functor (Control.Monad.Coroutine.SuspensionFunctors.Request x f)
+ Control.Monad.Coroutine.SuspensionFunctors: instance GHC.Base.Functor (Control.Monad.Coroutine.SuspensionFunctors.Yield x)
Files
Control/Monad/Coroutine/Nested.hs view
@@ -81,10 +81,9 @@ class (Functor a, Functor d) => AncestorFunctor a d where -- | Convert the ancestor functor into its descendant. The descendant functor typically contains the ancestor. liftFunctor :: a x -> d x--instance Functor a => AncestorFunctor a a where+instance {-# OVERLAPPING #-} Functor a => AncestorFunctor a a where liftFunctor = id-instance (Functor a, ChildFunctor d, d' ~ Parent d, AncestorFunctor a d') => AncestorFunctor a d where+instance {-# OVERLAPPABLE #-} (Functor a, ChildFunctor d, d' ~ Parent d, AncestorFunctor a d') => AncestorFunctor a d where liftFunctor = wrap . (liftFunctor :: a x -> d' x) -- | Converts a coroutine into a child nested coroutine.
monad-coroutine.cabal view
@@ -1,5 +1,5 @@ Name: monad-coroutine-Version: 0.9.0.1+Version: 0.9.0.2 Cabal-Version: >= 1.10 Build-Type: Simple Synopsis: Coroutine monad transformer for suspending and resuming monadic computations@@ -23,7 +23,6 @@ Library Exposed-Modules: Control.Monad.Coroutine, Control.Monad.Coroutine.SuspensionFunctors, Control.Monad.Coroutine.Nested- Build-Depends: base < 5, transformers >= 0.2 && < 0.5, transformers-compat >= 0.3 && < 0.5, monad-parallel- GHC-prof-options: -auto-all+ Build-Depends: base < 5, transformers >= 0.2 && < 0.5, transformers-compat >= 0.3 && < 0.6, monad-parallel < 1.0 if impl(ghc >= 7.0.0) default-language: Haskell2010