pipes-fluid-0.3.0.0: Reactively combines Producers so that a value is yielded as soon as possible.

Safe HaskellNone
LanguageHaskell2010

Pipes.Fluid.Sync

Synopsis

Documentation

newtype Sync m a Source #

The applicative instance of this combines multiple Producers synchronously ie, yields a value only when both of the input producers yields a value. Ends as soon as any of the input producer is ended.

Constructors

Sync 

Fields

Instances

Monad m => Monad (Sync m) Source # 

Methods

(>>=) :: Sync m a -> (a -> Sync m b) -> Sync m b #

(>>) :: Sync m a -> Sync m b -> Sync m b #

return :: a -> Sync m a #

fail :: String -> Sync m a #

Monad m => Functor (Sync m) Source # 

Methods

fmap :: (a -> b) -> Sync m a -> Sync m b #

(<$) :: a -> Sync m b -> Sync m a #

Monad m => Applicative (Sync m) Source # 

Methods

pure :: a -> Sync m a #

(<*>) :: Sync m (a -> b) -> Sync m a -> Sync m b #

(*>) :: Sync m a -> Sync m b -> Sync m b #

(<*) :: Sync m a -> Sync m b -> Sync m a #

Wrapped (Sync m0 a0) Source # 

Associated Types

type Unwrapped (Sync m0 a0) :: * #

Methods

_Wrapped' :: Iso' (Sync m0 a0) (Unwrapped (Sync m0 a0)) #

(~) * (Sync m0 a0) t0 => Rewrapped (Sync m1 a1) t0 Source # 
type Unwrapped (Sync m0 a0) Source # 
type Unwrapped (Sync m0 a0) = Producer a0 m0 ()