coroutine-object 0.3 → 0.3.0
raw patch · 2 files changed
+5/−21 lines, 2 filesdep +freedep −bytestringdep −cerealdep −containersPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: free
Dependencies removed: bytestring, cereal, containers, lens, safecopy, transformers-free, uuid
API changes (from Hackage documentation)
- Control.Monad.Trans.Crtn: instance (Monad m, MonadState st m, Functor f) => MonadState st (FreeT f m)
- Control.Monad.Trans.Crtn: instance Functor (Awt g)
- Control.Monad.Trans.Crtn: instance Functor (Rqst req ans)
- Control.Monad.Trans.Crtn: instance Functor (Yld o)
- Control.Monad.Trans.Crtn: instance Show CrtnErr
- Control.Monad.Trans.Crtn.Logger: instance [overlap ok] (MonadTrans t, MonadLog m, Monad (t m)) => MonadLog (t m)
- Control.Monad.Trans.Crtn.Logger: instance [overlap ok] MonadLog IO
- Control.Monad.Trans.Crtn.Queue: bqueue :: Queue a -> [a]
- Control.Monad.Trans.Crtn.Queue: fqueue :: Queue a -> [a]
- Control.Monad.Trans.Crtn.Queue: instance Show a => Show (Queue a)
+ Control.Monad.Trans.Crtn: instance GHC.Base.Functor (Control.Monad.Trans.Crtn.Awt g)
+ Control.Monad.Trans.Crtn: instance GHC.Base.Functor (Control.Monad.Trans.Crtn.Rqst req ans)
+ Control.Monad.Trans.Crtn: instance GHC.Base.Functor (Control.Monad.Trans.Crtn.Yld o)
+ Control.Monad.Trans.Crtn: instance GHC.Show.Show Control.Monad.Trans.Crtn.CrtnErr
+ Control.Monad.Trans.Crtn.Logger: instance (Control.Monad.Trans.Class.MonadTrans t, Control.Monad.Trans.Crtn.Logger.MonadLog m, GHC.Base.Monad (t m)) => Control.Monad.Trans.Crtn.Logger.MonadLog (t m)
+ Control.Monad.Trans.Crtn.Logger: instance Control.Monad.Trans.Crtn.Logger.MonadLog GHC.Types.IO
+ Control.Monad.Trans.Crtn.Queue: [bqueue] :: Queue a -> [a]
+ Control.Monad.Trans.Crtn.Queue: [fqueue] :: Queue a -> [a]
+ Control.Monad.Trans.Crtn.Queue: instance GHC.Show.Show a => GHC.Show.Show (Control.Monad.Trans.Crtn.Queue.Queue a)
- Control.Monad.Trans.Crtn: await :: Monad m => CnsmT a m a
+ Control.Monad.Trans.Crtn: await :: (Monad m) => CnsmT a m a
- Control.Monad.Trans.Crtn: yield :: Monad m => o -> GenT o m ()
+ Control.Monad.Trans.Crtn: yield :: (Monad m) => o -> GenT o m ()
- Control.Monad.Trans.Crtn.Driver: dispatch :: Monad m => e -> DrvClient e m (Maybe (ActionOrder e))
+ Control.Monad.Trans.Crtn.Driver: dispatch :: (Monad m) => e -> DrvClient e m (Maybe (ActionOrder e))
- Control.Monad.Trans.Crtn.Driver: multiDispatch :: Monad m => (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) ()) -> [EvOrAct e] -> SObjBT (DrvOp e) m (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) (), [EvOrAct e])
+ Control.Monad.Trans.Crtn.Driver: multiDispatch :: (Monad m) => (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) ()) -> [EvOrAct e] -> SObjBT (DrvOp e) m (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) (), [EvOrAct e])
- Control.Monad.Trans.Crtn.Driver: multiDispatchTillEnd :: Monad m => (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) ()) -> [EvOrAct e] -> SObjBT (DrvOp e) m (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) ())
+ Control.Monad.Trans.Crtn.Driver: multiDispatchTillEnd :: (Monad m) => (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) ()) -> [EvOrAct e] -> SObjBT (DrvOp e) m (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) ())
- Control.Monad.Trans.Crtn.Driver: singleDispatch :: Monad m => Either (ActionOrder e) e -> (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) (), [EvOrAct e]) -> SObjBT (DrvOp e) m (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) (), [EvOrAct e])
+ Control.Monad.Trans.Crtn.Driver: singleDispatch :: (Monad m) => Either (ActionOrder e) e -> (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) (), [EvOrAct e]) -> SObjBT (DrvOp e) m (LogServer (SObjBT (DrvOp e) m) (), World e (SObjBT (DrvOp e) m) (), [EvOrAct e])
- Control.Monad.Trans.Crtn.IOActor: doIOAction :: Monad m => ((e -> IO ()) -> IO ()) -> CObjT (IOOp e) m (Either String ())
+ Control.Monad.Trans.Crtn.IOActor: doIOAction :: (Monad m) => ((e -> IO ()) -> IO ()) -> CObjT (IOOp e) m (Either String ())
- Control.Monad.Trans.Crtn.IOActor: ioactorgen :: MonadIO m => (e -> IO ()) -> SObjT (IOOp e) m ()
+ Control.Monad.Trans.Crtn.IOActor: ioactorgen :: (MonadIO m) => (e -> IO ()) -> SObjT (IOOp e) m ()
- Control.Monad.Trans.Crtn.Logger: class Monad m => MonadLog m
+ Control.Monad.Trans.Crtn.Logger: class (Monad m) => MonadLog m
- Control.Monad.Trans.Crtn.Logger: writeLog :: Monad m => String -> LogClient m ()
+ Control.Monad.Trans.Crtn.Logger: writeLog :: (Monad m) => String -> LogClient m ()
- Control.Monad.Trans.Crtn.Logger.Simple: loggerW :: MonadLog m => Int -> LogServer m ()
+ Control.Monad.Trans.Crtn.Logger.Simple: loggerW :: (MonadLog m) => Int -> LogServer m ()
- Control.Monad.Trans.Crtn.Logger.Simple: simplelogger :: MonadLog m => LogServer m ()
+ Control.Monad.Trans.Crtn.Logger.Simple: simplelogger :: (MonadLog m) => LogServer m ()
- Control.Monad.Trans.Crtn.Object: query :: Monad m => CObjT s m r -> EStT (SObjT s m ()) m r
+ Control.Monad.Trans.Crtn.Object: query :: (Monad m) => CObjT s m r -> EStT (SObjT s m ()) m r
- Control.Monad.Trans.Crtn.World: flushLog :: Monad m => LogServer m () -> CObjT (WorldOp e m) m (LogServer m ())
+ Control.Monad.Trans.Crtn.World: flushLog :: (Monad m) => LogServer m () -> CObjT (WorldOp e m) m (LogServer m ())
- Control.Monad.Trans.Crtn.World: flushQueue :: Monad m => CObjT (WorldOp e m) m [Either (ActionOrder e) e]
+ Control.Monad.Trans.Crtn.World: flushQueue :: (Monad m) => CObjT (WorldOp e m) m [Either (ActionOrder e) e]
- Control.Monad.Trans.Crtn.World: giveEvent :: Monad m => e -> CObjT (WorldOp e m) m ()
+ Control.Monad.Trans.Crtn.World: giveEvent :: (Monad m) => e -> CObjT (WorldOp e m) m ()
Files
- coroutine-object.cabal +4/−10
- src/Control/Monad/Trans/Crtn.hs +1/−11
coroutine-object.cabal view
@@ -1,5 +1,5 @@ Name: coroutine-object-Version: 0.3+Version: 0.3.0 Synopsis: Object-oriented programming realization using coroutine Description: Object-oriented programming realization using coroutine License: BSD3@@ -15,16 +15,10 @@ ghc-options: -Wall -funbox-strict-fields -fno-warn-unused-do-bind -fno-warn-orphans ghc-prof-options: -caf-all -auto-all Build-Depends: base >4 && <5, + either >= 3.1, mtl>2, - lens >= 2.5,- containers >= 0.4,- transformers >= 0.3, - transformers-free >= 1.0, - bytestring >= 0.9,- safecopy >= 0.6,- uuid > 1.2,- cereal > 0.3, - either >= 3.1 + transformers >= 0.3,+ free >= 4.0 Other-Modules: exposed-modules:
src/Control/Monad/Trans/Crtn.hs view
@@ -4,7 +4,7 @@ ----------------------------------------------------------------------------- -- | -- Module : Control.Monad.Trans.Crtn--- Copyright : (c) 2012 Ian-Woo Kim+-- Copyright : (c) 2012-2016 Ian-Woo Kim -- -- License : BSD3 -- Maintainer : Ian-Woo Kim <ianwookim@gmail.com>@@ -17,19 +17,9 @@ module Control.Monad.Trans.Crtn where --- import Control.Monad.Error import Control.Monad.Reader import Control.Monad.State import Control.Monad.Trans.Free---------------------------------- added instance of FreeT monad-------------------------------instance (Monad m, MonadState st m, Functor f) => MonadState st (FreeT f m) where - get = lift get- put = lift . put --------------------------- -- general generator