foundation-0.0.29: Alternative prelude with batteries and no dependencies
Safe Haskell None
Language Haskell2010

Foundation.Conduit

Synopsis

Documentation

data Conduit input output monad result Source #

A component of a conduit pipeline, which takes a stream of input , produces a stream of output , performs actions in the underlying monad , and produces a value of result when no more output data is available.

Instances

Instances details
MonadTrans ( Conduit i o) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

lift :: Monad m => m a -> Conduit i o m a Source #

Monad ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

(>>=) :: Conduit i o m a -> (a -> Conduit i o m b) -> Conduit i o m b Source #

(>>) :: Conduit i o m a -> Conduit i o m b -> Conduit i o m b Source #

return :: a -> Conduit i o m a Source #

Functor ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

fmap :: (a -> b) -> Conduit i o m a -> Conduit i o m b Source #

(<$) :: a -> Conduit i o m b -> Conduit i o m a Source #

Applicative ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

pure :: a -> Conduit i o m a Source #

(<*>) :: Conduit i o m (a -> b) -> Conduit i o m a -> Conduit i o m b Source #

liftA2 :: (a -> b -> c) -> Conduit i o m a -> Conduit i o m b -> Conduit i o m c Source #

(*>) :: Conduit i o m a -> Conduit i o m b -> Conduit i o m b Source #

(<*) :: Conduit i o m a -> Conduit i o m b -> Conduit i o m a Source #

MonadIO m => MonadIO ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

MonadFailure m => MonadFailure ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Associated Types

type Failure ( Conduit i o m) Source #

MonadCatch m => MonadCatch ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

catch :: Exception e => Conduit i o m a -> (e -> Conduit i o m a) -> Conduit i o m a Source #

MonadThrow m => MonadThrow ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

type Failure ( Conduit i o m) Source #
Instance details

Defined in Foundation.Conduit.Internal

data ResourceT m a Source #

Instances

Instances details
MonadTrans ResourceT Source #
Instance details

Defined in Foundation.Conduit.Internal

Monad m => Monad ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Functor m => Functor ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Applicative m => Applicative ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

MonadIO m => MonadIO ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

MonadBracket m => MonadBracket ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

generalBracket :: ResourceT m a -> (a -> b -> ResourceT m ignored1) -> (a -> SomeException -> ResourceT m ignored2) -> (a -> ResourceT m b) -> ResourceT m b Source #

MonadCatch m => MonadCatch ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

MonadThrow m => MonadThrow ( ResourceT m) Source #
Instance details

Defined in Foundation.Conduit.Internal

newtype ZipSink i m r Source #

Constructors

ZipSink

Fields

Instances

Instances details
Monad m => Functor ( ZipSink i m) Source #
Instance details

Defined in Foundation.Conduit.Internal

Methods

fmap :: (a -> b) -> ZipSink i m a -> ZipSink i m b Source #

(<$) :: a -> ZipSink i m b -> ZipSink i m a Source #

Monad m => Applicative ( ZipSink i m) Source #
Instance details

Defined in Foundation.Conduit.Internal

await :: Conduit i o m ( Maybe i) Source #

Await for a value from upstream.

awaitForever :: (input -> Conduit input output monad b) -> Conduit input output monad () Source #

yield :: Monad m => o -> Conduit i o m () Source #

Send a value downstream.

yields :: ( Monad m, Foldable os, Element os ~ o) => os -> Conduit i o m () Source #

Send values downstream.

yieldOr Source #

Arguments

:: o
-> m ()

finalizer

-> Conduit i o m ()

Same as yield , but additionally takes a finalizer to be run if the downstream component terminates.

leftover :: i -> Conduit i o m () Source #

Provide leftover input to be consumed by the next component in the current monadic binding.

runConduit :: Monad m => Conduit () () m r -> m r Source #

Run a conduit pipeline to completion.

runConduitPure :: Conduit () () Identity r -> r Source #

Run a pure conduit pipeline to completion.

runConduitRes :: ( MonadBracket m, MonadIO m) => Conduit () () ( ResourceT m) r -> m r Source #

Run a conduit pipeline in a ResourceT context for acquiring resources.

fuse :: Monad m => Conduit a b m () -> Conduit b c m r -> Conduit a c m r Source #

Send the output of the first Conduit component to the second Conduit component.

(.|) :: Monad m => Conduit a b m () -> Conduit b c m r -> Conduit a c m r infixr 2 Source #

Operator version of fuse .

bracketConduit :: MonadResource m => IO a -> (a -> IO b) -> (a -> Conduit i o m r) -> Conduit i o m r Source #