Safe Haskell | None |
---|---|

Language | Haskell2010 |

- class Monad m => MonadState m where
- type State m

- get :: MonadState m => m (State m)
- put :: MonadState m => State m -> m ()
- data StateT s m a
- runStateT :: StateT s m a -> s -> m (a, s)

# MonadState

class Monad m => MonadState m where Source #

get :: MonadState m => m (State m) Source #

put :: MonadState m => State m -> m () Source #

# StateT

State Transformer

MonadTrans (StateT s) Source # | |

(Functor m, Monad m) => Monad (StateT s m) Source # | |

Functor m => Functor (StateT s m) Source # | |

(Applicative m, Monad m) => Applicative (StateT s m) Source # | |

(Functor m, MonadIO m) => MonadIO (StateT s m) Source # | |

(Functor m, MonadCatch m) => MonadCatch (StateT s m) Source # | |

(Functor m, MonadThrow m) => MonadThrow (StateT s m) Source # | |

(Functor m, MonadFailure m) => MonadFailure (StateT s m) Source # | |

(Functor m, Monad m) => MonadState (StateT s m) Source # | |

type Failure (StateT s m) Source # | |

type State (StateT s m) Source # | |