Portability | non-portable (multi-param classes, functional dependencies) |
---|---|
Stability | experimental |
Maintainer | Mark Snyder, marks@ittc.ku.edu |
Lazy state monads.
Documentation
module Control.Monad.StateX.Class
StateX | |
|
evalStatex :: Index ix => ix -> StateX ix s a -> s -> aSource
execStatex :: Index ix => ix -> StateX ix s a -> s -> sSource
withStatex :: Index ix => ix -> (s -> s) -> StateX ix s a -> StateX ix s aSource
newtype StateTX ix s m a Source
StateTX | |
|
runStateTX :: Index ix => ix -> StateTX ix s m a -> s -> m (a, s)Source
evalStateTX :: (Monad m, Index ix) => ix -> StateTX ix s m a -> s -> m aSource
execStateTX :: (Monad m, Index ix) => ix -> StateTX ix s m a -> s -> m sSource
mapStateTX :: Index ix => ix -> (m (a, s) -> n (b, s)) -> StateTX ix s m a -> StateTX ix s n bSource
withStateTX :: Index ix => ix -> (s -> s) -> StateTX ix s m a -> StateTX ix s m aSource
module Control.Monad
module Control.Monad.Fix
module Control.Monad.Trans