Copyright | Copyright (c) 2009-2014, David Sorokin <david.sorokin@gmail.com> |
---|---|
License | BSD3 |
Maintainer | David Sorokin <david.sorokin@gmail.com> |
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Tested with: GHC 7.8.3
It identifies a current simulation session usually associated with the current simulation run.
- class (Functor m, Monad m) => SessionMonad m where
- data Session m :: *
- data SessionMarker m :: *
- newSession :: m (Session m)
- newSessionMarker :: Session m -> m (SessionMarker m)
- equalSessionMarker :: SessionMarker m -> SessionMarker m -> Bool
Documentation
class (Functor m, Monad m) => SessionMonad m where Source
A monad within which computation we can create and work with a simulation session.
A simulation session.
data SessionMarker m :: * Source
A marker that exists with the session and which can be compared for equality.
newSession :: m (Session m) Source
Create a new session.
newSessionMarker :: Session m -> m (SessionMarker m) Source
Create a new marker within the current session.
equalSessionMarker :: SessionMarker m -> SessionMarker m -> Bool Source
Compare two markers for equality.