Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
FreeUpdate
Documentation
data FreeUpdateT s p m a Source #
Constructors
FreeUpdateT | |
Fields
|
Instances
Monad m => Monad (FreeUpdateT s p m) Source # | |
Defined in FreeUpdate Methods (>>=) :: FreeUpdateT s p m a -> (a -> FreeUpdateT s p m b) -> FreeUpdateT s p m b # (>>) :: FreeUpdateT s p m a -> FreeUpdateT s p m b -> FreeUpdateT s p m b # return :: a -> FreeUpdateT s p m a # fail :: String -> FreeUpdateT s p m a # | |
Functor m => Functor (FreeUpdateT s p m) Source # | |
Defined in FreeUpdate Methods fmap :: (a -> b) -> FreeUpdateT s p m a -> FreeUpdateT s p m b # (<$) :: a -> FreeUpdateT s p m b -> FreeUpdateT s p m a # | |
Monad m => Applicative (FreeUpdateT s p m) Source # | |
Defined in FreeUpdate Methods pure :: a -> FreeUpdateT s p m a # (<*>) :: FreeUpdateT s p m (a -> b) -> FreeUpdateT s p m a -> FreeUpdateT s p m b # liftA2 :: (a -> b -> c) -> FreeUpdateT s p m a -> FreeUpdateT s p m b -> FreeUpdateT s p m c # (*>) :: FreeUpdateT s p m a -> FreeUpdateT s p m b -> FreeUpdateT s p m b # (<*) :: FreeUpdateT s p m a -> FreeUpdateT s p m b -> FreeUpdateT s p m a # | |
MonadIO m => MonadIO (FreeUpdateT s p m) Source # | |
Defined in FreeUpdate Methods liftIO :: IO a -> FreeUpdateT s p m a # |
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 #