conduit-1.3.6.1: Streaming data processing library.
Safe HaskellTrustworthy
LanguageHaskell2010

Data.Conduit.Internal.Fusion

Synopsis

Types

data Step s o r Source #

This is the same as stream fusion's Step. Constructors are renamed to avoid confusion with conduit names.

Constructors

Emit s o 
Skip s 
Stop r 

Instances

Instances details
Functor (Step s o) Source # 
Instance details

Defined in Data.Conduit.Internal.Fusion

Methods

fmap :: (a -> b) -> Step s o a -> Step s o b #

(<$) :: a -> Step s o b -> Step s o a #

data Stream (m :: Type -> Type) o r Source #

Constructors

Stream (s -> m (Step s o r)) (m s) 

data ConduitWithStream i o (m :: Type -> Type) r Source #

type StreamConduitT i o (m :: Type -> Type) r = Stream m i () -> Stream m o r Source #

type StreamConduit i (m :: Type -> Type) o = StreamConduitT i o m () Source #

type StreamSource (m :: Type -> Type) o = StreamConduitT () o m () Source #

type StreamProducer (m :: Type -> Type) o = forall i. StreamConduitT i o m () Source #

type StreamSink i (m :: Type -> Type) r = StreamConduitT i Void m r Source #

type StreamConsumer i (m :: Type -> Type) r = forall o. StreamConduitT i o m r Source #

Functions

streamConduit :: forall i o (m :: Type -> Type) r. ConduitT i o m r -> (Stream m i () -> Stream m o r) -> ConduitWithStream i o m r Source #

streamSource :: forall (m :: Type -> Type) o i. Monad m => Stream m o () -> ConduitWithStream i o m () Source #

streamSourcePure :: forall (m :: Type -> Type) o i. Monad m => Stream Identity o () -> ConduitWithStream i o m () Source #

unstream :: forall i o (m :: Type -> Type) r. ConduitWithStream i o m r -> ConduitT i o m r Source #