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 #

Minimal complete definition

liftProgram

Methods

liftProgram :: Program instr a -> m a #

Instances

MonadProgram instr m => MonadProgram instr (ListT m) # 

Methods

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

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

Methods

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

MonadProgram instr m => MonadProgram instr (IdentityT * m) # 

Methods

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

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

Methods

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

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

Methods

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

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

Methods

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

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

Methods

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

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

Methods

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

MonadProgram instr m => MonadProgram instr (ContT * r m) # 

Methods

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

MonadProgram instr m => MonadProgram instr (ReaderT * e m) # 

Methods

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

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

Methods

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

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

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 #