Idris2Doc : Control.Monad.State.State

Control.Monad.State.State

Definitions

record StateT : Type -> (Type -> Type) -> Type -> Type
  A monad transformer extending an inner monad `m` with state `stateType`.

Updates to the state are applied in the order as the sequence of actions.

Totality: total
Visibility: public export
Constructor: 
ST : (stateType -> m (stateType, a)) -> StateT stateType m a

Projection: 
.runStateT' : StateT stateType m a -> stateType -> m (stateType, a)

Hints:
(Monad f, Alternative f) => Alternative (StateT st f)
Monad f => Applicative (StateT stateType f)
Functor f => Functor (StateT stateType f)
HasIO m => HasIO (StateT stateType m)
Monad m => Monad (StateT stateType m)
MonadError e m => MonadError e (StateT r m)
MonadReader r m => MonadReader r (StateT s m)
Monad m => MonadState stateType (StateT stateType m)
MonadTrans (StateT stateType)
MonadWriter w m => MonadWriter w (StateT s m)
.runStateT' : StateT stateType m a -> stateType -> m (stateType, a)
Totality: total
Visibility: public export
runStateT' : StateT stateType m a -> stateType -> m (stateType, a)
Totality: total
Visibility: public export
runStateT : stateType -> StateT stateType m a -> m (stateType, a)
  Unwrap and apply a StateT monad computation.

Totality: total
Visibility: public export
evalStateT : Functor m => stateType -> StateT stateType m a -> m a
  Unwrap and apply a StateT monad computation, but discard the final state.

Totality: total
Visibility: public export
execStateT : Functor m => stateType -> StateT stateType m a -> m stateType
  Unwrap and apply a StateT monad computation, but discard the resulting value.

Totality: total
Visibility: public export
mapStateT : (m (s, a) -> n (s, b)) -> StateT s m a -> StateT s n b
  Map both the return value and final state of a computation using
the given function.

Totality: total
Visibility: public export
State : Type -> Type -> Type
  The State monad. See the MonadState interface

Totality: total
Visibility: public export
runState : stateType -> State stateType a -> (stateType, a)
  Unwrap and apply a State monad computation.

Totality: total
Visibility: public export
evalState : stateType -> State stateType a -> a
  Unwrap and apply a State monad computation, but discard the final state.

Totality: total
Visibility: public export
execState : stateType -> State stateType a -> stateType
  Unwrap and apply a State monad computation, but discard the resulting value.

Totality: total
Visibility: public export
mapState : ((s, a) -> (s, b)) -> State s a -> State s b
  Map both the return value and final state of a computation using
the given function.

Totality: total
Visibility: public export