aivika-transformers-5.9.1: Transformers for the Aivika simulation library
CopyrightCopyright (c) 2009-2017 David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Simulation.Aivika.Trans.Comp

Description

Tested with: GHC 8.0.1

It defines a type class of monads based on which the simulation monads can be built.

Synopsis

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.

Instances

Instances details
MonadComp IO Source #

An instantiation of the MonadComp type class.

Instance details

Defined in Simulation.Aivika.IO.Comp

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.

Methods

liftComp :: m a -> t m a Source #

Lift the underlying computation into another within simulation.

Instances

Instances details
Monad m => MonadCompTrans Event m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Internal.Event

Methods

liftComp :: m a -> Event m a Source #

Monad m => MonadCompTrans Dynamics m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Internal.Dynamics

Methods

liftComp :: m a -> Dynamics m a Source #

Monad m => MonadCompTrans Simulation m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Internal.Simulation

Methods

liftComp :: m a -> Simulation m a Source #

Monad m => MonadCompTrans Parameter m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Internal.Parameter

Methods

liftComp :: m a -> Parameter m a Source #

Monad m => MonadCompTrans Composite m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Composite

Methods

liftComp :: m a -> Composite m a Source #

MonadDES m => MonadCompTrans Cont m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Internal.Cont

Methods

liftComp :: m a -> Cont m a Source #

MonadDES m => MonadCompTrans Process m Source # 
Instance details

Defined in Simulation.Aivika.Trans.Internal.Process

Methods

liftComp :: m a -> Process m a Source #