state package:rio
Embed a simple state action into the monad.
Provides reexports of MonadState and related helpers.
A state monad parameterized by the type
s of the state to
carry.
The
return function leaves the state unchanged, while
>>= uses the final state of the first computation as
the initial state of the second.
A state transformer monad parameterized by:
- s - The state.
- m - The inner monad.
The
return function leaves the state unchanged, while
>>= uses the final state of the first computation as
the initial state of the second.
Environment values with stateful capabilities to SomeRef
Minimal definition is either both of get and put or
just state
Evaluate a state computation with the given initial state and return
the final value, discarding the final state.
Evaluate a state computation with the given initial state and return
the final value, discarding the final state.
Evaluate a state computation with the given initial state and return
the final state, discarding the final value.
Evaluate a state computation with the given initial state and return
the final state, discarding the final value.
Map both the return value and final state of a computation using the
given function.
Map both the return value and final state of a computation using the
given function.
Unwrap a state monad computation as a function. (The inverse of
state.)
withState f m executes action
m on a state
modified by applying
f.
withStateT f m executes action
m on a state
modified by applying
f.