operational-class-0.3.0.0: MonadProgram typeclass for the operational package

Safe HaskellSafe
LanguageHaskell2010

Control.Monad.Operational.Class

Documentation

class Monad m => MonadProgram instr m | m -> instr where #

Methods

liftProgram :: Program instr a -> m a #

Instances
MonadProgram instr m => MonadProgram instr (ListT m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> ListT m a #

MonadProgram instr m => MonadProgram instr (MaybeT m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> MaybeT m a #

MonadProgram instr m => MonadProgram instr (IdentityT m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> IdentityT m a #

(MonadProgram instr m, Monoid w) => MonadProgram instr (WriterT w m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> WriterT w m a #

(MonadProgram instr m, Monoid w) => MonadProgram instr (WriterT w m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> WriterT w m a #

MonadProgram instr m => MonadProgram instr (StateT s m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> StateT s m a #

MonadProgram instr m => MonadProgram instr (StateT s m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> StateT s m a #

MonadProgram instr m => MonadProgram instr (ReaderT e m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> ReaderT e m a #

Monad m => MonadProgram instr (ProgramT instr m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> ProgramT instr m a #

MonadProgram instr m => MonadProgram instr (ContT r m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> ContT r m a #

(MonadProgram instr m, Monoid w) => MonadProgram instr (RWST r w s m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> RWST r w s m a #

(MonadProgram instr m, Monoid w) => MonadProgram instr (RWST r w s m) # 
Instance details

Defined in Control.Monad.Operational.Class

Methods

liftProgram :: Program instr a -> RWST r w s m a #

liftProgramTrans :: (Monad (t n), MonadTrans t, MonadProgram instr n) => Program instr a -> t n a #

singleton :: MonadProgram instr m => instr a -> m a #