List package:conduit
NOTE It is recommended to start using
Data.Conduit.Combinators instead of this module.
Higher-level functions to interact with the elements of a stream. Most
of these are based on list functions.
Note that these functions all deal with individual elements of a
stream as a sort of "black box", where there is no introspection of
the contained elements. Values such as
ByteString and
Text will likely need to be treated specially to deal with
their contents properly (
Word8 and
Char,
respectively). See the
Data.Conduit.Binary and
Data.Conduit.Text modules in the
conduit-extra
package.
Consume all values from the stream and return as a list. Note that
this will pull all values into memory.
Subject to fusion
Convert a
Source into a list. The basic functionality can be
explained as:
sourceToList src = src $$ Data.Conduit.List.consume
However,
sourceToList is able to produce its results lazily,
which cannot be done when running a conduit pipeline in general.
Unlike the
Data.Conduit.Lazy module (in conduit-extra), this
function performs no unsafe I/O operations, and therefore can only be
as lazy as the underlying monad.
Since 1.2.6
Convert a list into a source.
Since 0.3.0
Yield the values from the list.
Subject to fusion