acme-all-monad-0.1.0.0: A monad which is powerful enough to interpret any action

LicensePublic Domain
Stabilitystable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Control.Monad.All.Class

Description

The MonadAll type class, which represents monads which are powerful enough to interpret any monadic action.

Synopsis

Documentation

class Monad m => MonadAll m where Source

The MonadAll class represents those monads which support every monadic action.

Instances are provided for AllT and the standard monad transformers, so that you can use arbitrary actions in other monad transformer stacks.

Methods

action :: a -> m b Source

Instances

MonadAll m => MonadAll (MaybeT m) 
MonadAll m => MonadAll (ListT m) 
MonadAll m => MonadAll (IdentityT m) 
MonadAll (AllT m) 
(MonadAll m, Monoid w) => MonadAll (WriterT w m) 
(MonadAll m, Monoid w) => MonadAll (WriterT w m) 
MonadAll m => MonadAll (ExceptT e m) 
MonadAll m => MonadAll (StateT s m) 
MonadAll m => MonadAll (StateT s m) 
MonadAll m => MonadAll (ReaderT r m) 
(MonadAll m, Monoid w) => MonadAll (RWST r w s m) 
(MonadAll m, Monoid w) => MonadAll (RWST r w s m) 

action_ :: MonadAll m => a -> m () Source

Perform an action, discarding the result.