-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Lift computations from the bottom of a transformer stack
--
-- This package provides a straightforward port of monadLib's
-- BaseM typeclass to transformers.
@package transformers-base
@version 0.4.3
module Control.Monad.Base
class (Applicative b, Applicative m, Monad b, Monad m) => MonadBase b m | m -> b
liftBase :: MonadBase b m => b α -> m α
-- | Can be used as a default implementation for liftBase.
--
-- Note that: liftBaseDefault = lift . liftBase
liftBaseDefault :: (MonadTrans t, MonadBase b m) => b α -> t m α
instance [safe] (Error e, MonadBase b m) => MonadBase b (ErrorT e m)
instance [safe] (Monoid w, MonadBase b m) => MonadBase b (RWST r w s m)
instance [safe] (Monoid w, MonadBase b m) => MonadBase b (RWST r w s m)
instance [safe] (Monoid w, MonadBase b m) => MonadBase b (WriterT w m)
instance [safe] (Monoid w, MonadBase b m) => MonadBase b (WriterT w m)
instance [safe] MonadBase b m => MonadBase b (ContT r m)
instance [safe] MonadBase b m => MonadBase b (StateT s m)
instance [safe] MonadBase b m => MonadBase b (StateT s m)
instance [safe] MonadBase b m => MonadBase b (ReaderT r m)
instance [safe] MonadBase b m => MonadBase b (ListT m)
instance [safe] MonadBase b m => MonadBase b (MaybeT m)
instance [safe] MonadBase b m => MonadBase b (IdentityT m)
instance [safe] MonadBase (ST s) (ST s)
instance [safe] MonadBase (ST s) (ST s)
instance [safe] MonadBase STM STM
instance [safe] MonadBase Identity Identity
instance [safe] MonadBase ((->) r) ((->) r)
instance [safe] MonadBase [] []
instance [safe] MonadBase (Either e) (Either e)
instance [safe] MonadBase Maybe Maybe
instance [safe] MonadBase IO IO