Copyright | Copyright (c) 2009-2017 David Sorokin <david.sorokin@gmail.com> |
---|---|
License | BSD3 |
Maintainer | David Sorokin <david.sorokin@gmail.com> |
Stability | experimental |
Safe Haskell | None |
Language | Haskell2010 |
Tested with: GHC 8.0.1
It defines a type class of monads based on which the simulation monads can be built.
Synopsis
- class (Monad m, MonadException m, MonadGenerator m) => MonadComp m
- class MonadCompTrans t m where
- liftComp :: m a -> t m a
Documentation
class (Monad m, MonadException m, MonadGenerator m) => MonadComp m Source #
A type class of monads based on which the simulation monads can be built.
class MonadCompTrans t m where Source #
A variant of the standard MonadTrans
type class with one difference:
the computation that will be lifted into another must be MonadComp
instead of
more general and less restricted Monad
.
Instances
Monad m => MonadCompTrans Event m Source # | |
Defined in Simulation.Aivika.Trans.Internal.Event | |
Monad m => MonadCompTrans Dynamics m Source # | |
Defined in Simulation.Aivika.Trans.Internal.Dynamics | |
Monad m => MonadCompTrans Simulation m Source # | |
Defined in Simulation.Aivika.Trans.Internal.Simulation liftComp :: m a -> Simulation m a Source # | |
Monad m => MonadCompTrans Parameter m Source # | |
Defined in Simulation.Aivika.Trans.Internal.Parameter | |
Monad m => MonadCompTrans Composite m Source # | |
Defined in Simulation.Aivika.Trans.Composite | |
MonadDES m => MonadCompTrans Cont m Source # | |
Defined in Simulation.Aivika.Trans.Internal.Cont | |
MonadDES m => MonadCompTrans Process m Source # | |
Defined in Simulation.Aivika.Trans.Internal.Process |