Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Documentation
data FreeUpdateT s p m a Source #
FreeUpdateT | |
|
Instances
action :: Applicative m => p -> FreeUpdateT s p m () Source #
currentState :: Applicative m => FreeUpdateT s p m s Source #
evalFreeUpdateT :: Functor m => FreeUpdateT s p m a -> (p -> s -> s) -> s -> m a Source #
execFreeUpdateT :: Monad m => FreeUpdateT s p m a -> (p -> s -> s) -> s -> m s Source #
collectUpdateT :: Functor m => FreeUpdateT s p m a -> (p -> s -> s) -> s -> m [p] Source #
type FreeUpdate s p a = FreeUpdateT s p Identity a Source #
evalFreeUpdate :: FreeUpdate s p a -> (p -> s -> s) -> s -> a Source #
execFreeUpdate :: FreeUpdate s p a -> (p -> s -> s) -> s -> s Source #
collectFreeUpdate :: FreeUpdate s p a -> (p -> s -> s) -> s -> [p] Source #
runFreeUpdate :: FreeUpdate s p a -> (p -> s -> s) -> s -> ([p], a) Source #