Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
The multi-valued version of mtl's MonadState
Synopsis
- class Monad m => MonadMultiGet a m where
- mGet :: m a
- class MonadMultiGet a m => MonadMultiState a m where
- mSet :: a -> m ()
MonadMultiState class
class Monad m => MonadMultiGet a m where Source #
In contrast to MonadMultiReader, MonadMultiGet is defined for State too, so it corresponds to read-access of any kind.
Note however that for MultiRWS, only the values from the state
part can
be accessed via MonadMultiGet
, due to limitations of the design of
MultiRWS
and of the type system. This is issue is resolved in the
MultiGST
type.
Instances
class MonadMultiGet a m => MonadMultiState a m where Source #
Instances
(MonadTrans t, Monad (t m), MonadMultiState a m) => MonadMultiState a (t m) Source # | |
Defined in Control.Monad.Trans.MultiState.Class | |
(Monad m, ContainsType a c) => MonadMultiState a (MultiStateT c m) Source # | |
Defined in Control.Monad.Trans.MultiState.Strict mSet :: a -> MultiStateT c m () Source # | |
(Monad m, ContainsType a c) => MonadMultiState a (MultiStateT c m) Source # | |
Defined in Control.Monad.Trans.MultiState.Lazy mSet :: a -> MultiStateT c m () Source # | |
(Monad m, HListMContains SettableFlag a cts) => MonadMultiState a (MultiGSTT cts m) Source # | |
Defined in Control.Monad.Trans.MultiGST.Strict | |
(Monad m, HListMContains SettableFlag a cts) => MonadMultiState a (MultiGSTT cts m) Source # | |
Defined in Control.Monad.Trans.MultiGST.Lazy | |
(Monad m, ContainsType a s) => MonadMultiState a (MultiRWST r w s m) Source # | |
Defined in Control.Monad.Trans.MultiRWS.Strict | |
(Monad m, ContainsType a s) => MonadMultiState a (MultiRWST r w s m) Source # | |
Defined in Control.Monad.Trans.MultiRWS.Lazy |