haskell-halogen-core
Safe HaskellNone
LanguageGHC2021

Control.Monad.State.Delayed.Trans

Documentation

newtype DelayedStateT s (m :: Type -> Type) a Source #

Constructors

DelayedStateT (Delayer s -> m a) 

Instances

Instances details
(MonadUnliftIO m, MonadState s m) => MonadDelayedState s (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

commit :: DelayedStateT s m () Source #

(MonadUnliftIO m, MonadState s m) => MonadState s (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

get :: DelayedStateT s m s #

put :: s -> DelayedStateT s m () #

state :: (s -> (a, s)) -> DelayedStateT s m a #

MonadTrans (DelayedStateT s) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

lift :: Monad m => m a -> DelayedStateT s m a #

Applicative m => Applicative (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

pure :: a -> DelayedStateT s m a #

(<*>) :: DelayedStateT s m (a -> b) -> DelayedStateT s m a -> DelayedStateT s m b #

liftA2 :: (a -> b -> c) -> DelayedStateT s m a -> DelayedStateT s m b -> DelayedStateT s m c #

(*>) :: DelayedStateT s m a -> DelayedStateT s m b -> DelayedStateT s m b #

(<*) :: DelayedStateT s m a -> DelayedStateT s m b -> DelayedStateT s m a #

Functor m => Functor (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

fmap :: (a -> b) -> DelayedStateT s m a -> DelayedStateT s m b #

(<$) :: a -> DelayedStateT s m b -> DelayedStateT s m a #

Monad m => Monad (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

(>>=) :: DelayedStateT s m a -> (a -> DelayedStateT s m b) -> DelayedStateT s m b #

(>>) :: DelayedStateT s m a -> DelayedStateT s m b -> DelayedStateT s m b #

return :: a -> DelayedStateT s m a #

MonadIO m => MonadIO (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

liftIO :: IO a -> DelayedStateT s m a #

MonadUnliftIO m => MonadUnliftIO (DelayedStateT s m) Source # 
Instance details

Defined in Control.Monad.State.Delayed.Trans

Methods

withRunInIO :: ((forall a. DelayedStateT s m a -> IO a) -> IO b) -> DelayedStateT s m b #