reader package:streamly-core

Unfold standard input into a stream of Word8.
Unfold an array into a stream.
Unfold an array into a stream.
Unfold an array into a stream.
Read the entire ring, starting at the ring head i.e. from oldest to newest.
Unfolds a file handle into a byte stream. IO requests to the device are performed in sizes of defaultChunkSize.
>>> reader = Unfold.unfoldEach Array.reader Handle.chunkReader
Unfolds a file path into a byte stream. IO requests to the device are performed in sizes of defaultChunkSize. Pre-release
Unfolds a file path into a byte stream. IO requests to the device are performed in sizes of defaultChunkSize. Pre-release
Unfold an array into a stream in reverse order.
Unfold an array into a stream in reverse order.
Read the entire ring in reverse order, starting at the item before the ring head i.e. from newest to oldest
Unfolds the tuple (bufsize, handle) into a byte stream, read requests to the IO device are performed using buffers of bufsize.
>>> readerWith = Unfold.unfoldEach Array.reader Handle.chunkReaderWith
Deprecated: Please use unsafeReader instead.
Unfolds the tuple (bufsize, filepath) into a byte stream, read requests to the IO device are performed using buffers of bufsize. Pre-release
Unfolds the tuple (bufsize, filepath) into a byte stream, read requests to the IO device are performed using buffers of bufsize. Pre-release
Unfolds standard input into a stream of Word8 arrays.
Evaluate the inner monad of a stream as ReaderT.
Unfolds a handle into a stream of Word8 arrays. Requests to the IO device are performed using a buffer of size defaultChunkSize. The size of arrays in the resulting stream are therefore less than or equal to defaultChunkSize.
>>> chunkReader = Unfold.first IO.defaultChunkSize Handle.chunkReaderWith
Unfold the tuple (bufsize, handle) into a stream of Word8 arrays. Read requests to the IO device are performed using a buffer of size bufsize. The size of an array in the resulting stream is always less than or equal to bufsize.
Given a stream of array indices, read the elements on those indices from the supplied Array. An exception is thrown if an index is out of bounds. This is the most general operation. We can implement other operations in terms of this:
read =
let u = lmap (arr -> (0, length arr - 1)) Unfold.enumerateFromTo
in Unfold.lmap f (indexReader arr)

readRev =
let i = length arr - 1
in Unfold.lmap f (indexReaderFromThenTo i (i - 1) 0)
Pre-release
Unfolds (from, then, to, array) generating a finite stream whose first element is the array value from the index from and the successive elements are from the indices in increments of then up to to. Index enumeration can occur downwards or upwards depending on whether then comes before or after from.
getIndicesFromThenTo =
let f (from, next, to, arr) =
(Stream.enumerateFromThenTo from next to, arr)
in Unfold.lmap f getIndices
Unimplemented