pipes-category-0.1.0.0: Allows instances for Category, Arrow and ArrowChoice for Pipes.

Safe HaskellNone
LanguageHaskell2010

Pipes.PipeC

Description

Allows instances for Category, Arrow and ArrowChoice for Pipe using newtypewrapper PipeC.

Documentation

newtype PipeC m r b c Source #

Constructors

PipeC 

Fields

Instances

Monad m => Category * (PipeC m r) Source # 

Methods

id :: cat a a #

(.) :: cat b c -> cat a b -> cat a c #

Monad m => Arrow (PipeC m r) Source # 

Methods

arr :: (b -> c) -> PipeC m r b c #

first :: PipeC m r b c -> PipeC m r (b, d) (c, d) #

second :: PipeC m r b c -> PipeC m r (d, b) (d, c) #

(***) :: PipeC m r b c -> PipeC m r b' c' -> PipeC m r (b, b') (c, c') #

(&&&) :: PipeC m r b c -> PipeC m r b c' -> PipeC m r b (c, c') #

Monad m => ArrowChoice (PipeC m r) Source # 

Methods

left :: PipeC m r b c -> PipeC m r (Either b d) (Either c d) #

right :: PipeC m r b c -> PipeC m r (Either d b) (Either d c) #

(+++) :: PipeC m r b c -> PipeC m r b' c' -> PipeC m r (Either b b') (Either c c') #

(|||) :: PipeC m r b d -> PipeC m r c d -> PipeC m r (Either b c) d #

Wrapped (PipeC m0 r0 b0 c0) Source # 

Associated Types

type Unwrapped (PipeC m0 r0 b0 c0) :: * #

Methods

_Wrapped' :: Iso' (PipeC m0 r0 b0 c0) (Unwrapped (PipeC m0 r0 b0 c0)) #

(~) * (PipeC m0 r0 b0 c0) t0 => Rewrapped (PipeC m1 r1 b1 c1) t0 Source # 
type Unwrapped (PipeC m0 r0 b0 c0) Source # 
type Unwrapped (PipeC m0 r0 b0 c0) = Pipe b0 c0 m0 r0