pipes-3.0.0: Compositional pipelines

Safe HaskellSafe
LanguageHaskell98

Control.Proxy.Trans.Identity

Contents

Description

This module provides the proxy transformer equivalent of IdentityT.

Synopsis

Identity Proxy Transformer

newtype IdentityP p a' a b' b m r Source #

The Identity proxy transformer

Constructors

IdentityP 

Fields

Instances

ProxyTrans IdentityP Source # 

Methods

liftP :: (Monad m, Proxy p) => p a' a b' b m r -> IdentityP p a' a b' b m r Source #

PFunctor IdentityP Source # 

Methods

hoistP :: (Monad m, Proxy p) => (forall a' a b' b r1. p a' a b' b m r1 -> q a' a b' b m r1) -> IdentityP p a' a b' b m r2 -> IdentityP q a' a b' b m r2 Source #

MonadIOP p => MonadIOP (IdentityP p) Source # 

Methods

liftIO_P :: MonadIO m => IO r -> IdentityP p a' a b' b m r Source #

MonadPlusP p => MonadPlusP (IdentityP p) Source # 

Methods

mzero_P :: Monad m => IdentityP p a' a b' b m r Source #

mplus_P :: Monad m => IdentityP p a' a b' b m r -> IdentityP p a' a b' b m r -> IdentityP p a' a b' b m r Source #

Interact p => Interact (IdentityP p) Source # 

Methods

(\>\) :: Monad m => (b' -> IdentityP p a' a x' x m b) -> (c' -> IdentityP p b' b x' x m c) -> c' -> IdentityP p a' a x' x m c Source #

(/>/) :: Monad m => (a -> IdentityP p x' x b' b m a') -> (b -> IdentityP p x' x c' c m b') -> a -> IdentityP p x' x c' c m a' Source #

Proxy p => Proxy (IdentityP p) Source # 

Methods

request :: Monad m => a' -> IdentityP p a' a b' b m a Source #

respond :: Monad m => b -> IdentityP p a' a b' b m b' Source #

(>->) :: Monad m => (b' -> IdentityP p a' a b' b m r) -> (c' -> IdentityP p b' b c' c m r) -> c' -> IdentityP p a' a c' c m r Source #

(>~>) :: Monad m => (a -> IdentityP p a' a b' b m r) -> (b -> IdentityP p b' b c' c m r) -> a -> IdentityP p a' a c' c m r Source #

return_P :: Monad m => r -> IdentityP p a' a b' b m r Source #

(?>=) :: Monad m => IdentityP p a' a b' b m r -> (r -> IdentityP p a' a b' b m r') -> IdentityP p a' a b' b m r' Source #

lift_P :: Monad m => m r -> IdentityP p a' a b' b m r Source #

hoist_P :: Monad m => (forall r. m r -> n r) -> IdentityP p a' a b' b m r' -> IdentityP p a' a b' b n r' Source #

Proxy p => MonadTrans (IdentityP p a' a b' b) Source # 

Methods

lift :: Monad m => m a -> IdentityP p a' a b' b m a #

Proxy p => MFunctor (IdentityP p a' a b' b) Source # 

Methods

hoist :: Monad m => (forall c. m c -> n c) -> IdentityP p a' a b' b m b -> IdentityP p a' a b' b n b Source #

(Proxy p, Monad m) => Monad (IdentityP p a' a b' b m) Source # 

Methods

(>>=) :: IdentityP p a' a b' b m a -> (a -> IdentityP p a' a b' b m b) -> IdentityP p a' a b' b m b #

(>>) :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m b -> IdentityP p a' a b' b m b #

return :: a -> IdentityP p a' a b' b m a #

fail :: String -> IdentityP p a' a b' b m a #

(Proxy p, Monad m) => Functor (IdentityP p a' a b' b m) Source # 

Methods

fmap :: (a -> b) -> IdentityP p a' a b' b m a -> IdentityP p a' a b' b m b #

(<$) :: a -> IdentityP p a' a b' b m b -> IdentityP p a' a b' b m a #

(Proxy p, Monad m) => Applicative (IdentityP p a' a b' b m) Source # 

Methods

pure :: a -> IdentityP p a' a b' b m a #

(<*>) :: IdentityP p a' a b' b m (a -> b) -> IdentityP p a' a b' b m a -> IdentityP p a' a b' b m b #

(*>) :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m b -> IdentityP p a' a b' b m b #

(<*) :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m b -> IdentityP p a' a b' b m a #

(MonadIOP p, MonadIO m) => MonadIO (IdentityP p a' a b' b m) Source # 

Methods

liftIO :: IO a -> IdentityP p a' a b' b m a #

(MonadPlusP p, Monad m) => Alternative (IdentityP p a' a b' b m) Source # 

Methods

empty :: IdentityP p a' a b' b m a #

(<|>) :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m a -> IdentityP p a' a b' b m a #

some :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m [a] #

many :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m [a] #

(MonadPlusP p, Monad m) => MonadPlus (IdentityP p a' a b' b m) Source # 

Methods

mzero :: IdentityP p a' a b' b m a #

mplus :: IdentityP p a' a b' b m a -> IdentityP p a' a b' b m a -> IdentityP p a' a b' b m a #

identityK :: (q -> p a' a b' b m r) -> q -> IdentityP p a' a b' b m r Source #

Wrap a 'K'leisli arrow in IdentityP

runIdentityK :: (q -> IdentityP p a' a b' b m r) -> q -> p a' a b' b m r Source #

Run an P 'K'leisli arrow