conduit-1.3.4.1: Streaming data processing library.
Safe HaskellNone
LanguageHaskell2010

Data.Conduit.Combinators.Stream

Description

These are stream fusion versions of some of the functions in Data.Conduit.Combinators. Many functions don't have stream versions here because instead they have RULES which inline a definition that fuses.

Synopsis

Documentation

yieldManyS :: (Monad m, MonoFoldable mono) => mono -> StreamProducer m (Element mono) #

repeatMS :: Monad m => m a -> StreamProducer m a #

repeatWhileMS :: Monad m => m a -> (a -> Bool) -> StreamProducer m a #

foldl1S :: Monad m => (a -> a -> a) -> StreamConsumer a m (Maybe a) #

allS :: Monad m => (a -> Bool) -> StreamConsumer a m Bool #

anyS :: Monad m => (a -> Bool) -> StreamConsumer a m Bool #

sinkLazyS :: (Monad m, LazySequence lazy strict) => StreamConsumer strict m lazy #

sinkVectorS :: (Vector v a, PrimMonad m) => StreamConsumer a m (v a) #

sinkVectorNS #

Arguments

:: (Vector v a, PrimMonad m) 
=> Int

maximum allowed size

-> StreamConsumer a m (v a) 

lastS :: Monad m => StreamConsumer a m (Maybe a) #

lastES :: (Monad m, IsSequence seq) => StreamConsumer seq m (Maybe (Element seq)) #

findS :: Monad m => (a -> Bool) -> StreamConsumer a m (Maybe a) #

concatMapS :: (Monad m, MonoFoldable mono) => (a -> mono) -> StreamConduit a m (Element mono) #

concatMapMS :: (Monad m, MonoFoldable mono) => (a -> m mono) -> StreamConduit a m (Element mono) #

concatS :: (Monad m, MonoFoldable mono) => StreamConduit mono m (Element mono) #

scanlS :: Monad m => (a -> b -> a) -> a -> StreamConduit b m a #

scanlMS :: Monad m => (a -> b -> m a) -> a -> StreamConduit b m a #

mapAccumWhileS :: Monad m => (a -> s -> Either s (s, b)) -> s -> StreamConduitT a b m s #

mapAccumWhileMS :: Monad m => (a -> s -> m (Either s (s, b))) -> s -> StreamConduitT a b m s #

intersperseS :: Monad m => a -> StreamConduit a m a #

slidingWindowS :: (Monad m, IsSequence seq, Element seq ~ a) => Int -> StreamConduit a m seq #

filterMS :: Monad m => (a -> m Bool) -> StreamConduit a m a #

splitOnUnboundedES :: (Monad m, IsSequence seq) => (Element seq -> Bool) -> StreamConduit seq m seq #

initReplicateS :: Monad m => m seed -> (seed -> m a) -> Int -> StreamProducer m a #

Streaming versions of Data.Conduit.Combinators.Internal.initReplicate

initRepeatS :: Monad m => m seed -> (seed -> m a) -> StreamProducer m a #

Streaming versions of Data.Conduit.Combinators.Internal.initRepeat