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

Safe HaskellSafe
LanguageHaskell2010

Control.Monad.Trans.Lift.Listen

Description

Lifting the listen operation.

Synopsis

Documentation

class MonadTrans t => LiftListen t where Source

The class of monad transformers capable of lifting listen.

Methods

liftListen :: Monad m => Listen w m (StT t a) -> Listen w (t m) a Source

Lift the listen operation. Should satisfy the uniformity property

type Listen w m a = m a -> m (a, w)

Signature of the listen operation, introduced in Control.Monad.Trans.Writer.

defaultLiftListen Source

Arguments

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

Monad constructor

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

Monad deconstructor

-> Listen w m (StT n a) 
-> Listen w (t m) a 

Default definition for the liftListen method.