transformers-lift-0.2.0.1: Ad-hoc type classes for lifting

Safe HaskellSafe
LanguageHaskell2010

Control.Monad.Trans.Lift.Local

Description

Lifting the local operation.

Synopsis

Documentation

class MonadTrans t => LiftLocal t where Source #

The class of monad transformers capable of lifting local.

Minimal complete definition

liftLocal

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (t m) a Source #

Lift the local operation.

Instances

LiftLocal MaybeT Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (MaybeT m) a Source #

LiftLocal ListT Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (ListT m) a Source #

Monoid w => LiftLocal (WriterT w) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (WriterT w m) a Source #

Monoid w => LiftLocal (WriterT w) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (WriterT w m) a Source #

LiftLocal (StateT s) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (StateT s m) a Source #

LiftLocal (StateT s) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (StateT s m) a Source #

LiftLocal (IdentityT *) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (IdentityT * m) a Source #

LiftLocal (ExceptT e) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (ExceptT e m) a Source #

Monoid w => LiftLocal (WriterT w) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (WriterT w m) a Source #

LiftLocal (ReaderT * r) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (ReaderT * r m) a Source #

LiftLocal (ContT * r) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (ContT * r m) a Source #

Monoid w => LiftLocal (RWST r w s) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (RWST r w s m) a Source #

Monoid w => LiftLocal (RWST r w s) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (RWST r w s m) a Source #

Monoid w => LiftLocal (RWST r w s) Source # 

Methods

liftLocal :: Monad m => m r -> (forall a. Local r m a) -> forall a. Local r (RWST r w s m) a Source #

type Local r m a = (r -> r) -> m a -> m a Source #

Signature of the local operation, introduced in Control.Monad.Trans.Reader.

defaultLiftLocal Source #

Arguments

:: (Monad m, LiftLocal n) 
=> (forall x. n m x -> t m x)

Monad constructor

-> (forall o x. t o x -> n o x)

Monad deconstructor

-> m r 
-> (forall a. Local r m a) 
-> forall a. Local r (t m) a 

Default definition for the liftLocal method.