effect-stack-0.3: Reducing the pain of transformer stacks with duplicated effects

Safe HaskellNone
LanguageHaskell2010

Control.Monad.Stack.Select

Documentation

class Monad m => SelectStack m where Source #

Associated Types

type PopSelect m :: * -> * Source #

Methods

liftSelect :: PopSelect m a -> m a Source #

Instances
SelectStack m => SelectStack (MaybeT m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (MaybeT m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (MaybeT m) a -> MaybeT m a Source #

SelectStack m => SelectStack (IdentityT m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (IdentityT m) :: Type -> Type Source #

SelectStack m => SelectStack (ExceptT e m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (ExceptT e m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (ExceptT e m) a -> ExceptT e m a Source #

SelectStack m => SelectStack (ReaderT r m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (ReaderT r m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (ReaderT r m) a -> ReaderT r m a Source #

SelectStack m => SelectStack (StateT s m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (StateT s m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (StateT s m) a -> StateT s m a Source #

SelectStack m => SelectStack (StateT s m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (StateT s m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (StateT s m) a -> StateT s m a Source #

(SelectStack m, Monoid w) => SelectStack (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (WriterT w m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (WriterT w m) a -> WriterT w m a Source #

(SelectStack m, Monoid w) => SelectStack (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (WriterT w m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (WriterT w m) a -> WriterT w m a Source #

(SelectStack m, Monoid w) => SelectStack (AccumT w m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (AccumT w m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (AccumT w m) a -> AccumT w m a Source #

(SelectStack m, Monoid w) => SelectStack (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (WriterT w m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (WriterT w m) a -> WriterT w m a Source #

Monad m => SelectStack (SelectT r m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (SelectT r m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (SelectT r m) a -> SelectT r m a Source #

SelectStack m => SelectStack (ContT r m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (ContT r m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (ContT r m) a -> ContT r m a Source #

(SelectStack m, Monoid w) => SelectStack (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (RWST r w s m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (RWST r w s m) a -> RWST r w s m a Source #

(SelectStack m, Monoid w) => SelectStack (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (RWST r w s m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (RWST r w s m) a -> RWST r w s m a Source #

(SelectStack m, Monoid w) => SelectStack (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Stack.Select

Associated Types

type PopSelect (RWST r w s m) :: Type -> Type Source #

Methods

liftSelect :: PopSelect (RWST r w s m) a -> RWST r w s m a Source #

depthSelect :: forall n m a. SelectConstraints n m => SelectDepth n m a -> m a Source #