Page
Library
Module
Module type
Parameter
Class
Class type
Source
Flux.StreamSourcerange ~by:step n m is a sequence of integers starting from n to m (excluding m) incremented by step. The range is pen on the right side.
repeat ~times:n x produces a stream by repeating x n times. If n is omitted, x is repeated ad infinitum.
unfold seed next is a stream created from a seed state and a function that produces elements and an updated state. The stream will terminate when next produces None.
A stream with all elements transformed with a mapping function.
Pass each element through an effectful function.
Take first n elements from the stream and discard the rest.
A stream that includes only the elements that satisfy a predicate.
filter_map fn src applies fn to every element x of source, discarding it if fn x produces None, and keeping the transformed value otherwise.
Inserts a separator element between each stream element.
flat_map fn stream is a stream concatenated from sub-streams produced by applying fn to all elements of stream.
each fn stream applies an function fn to all elements of stream. Each function is performed cooperatively via the Miou scheduler.
into sink stream is the result value produced by streaming all elements of stream into sink.
via flow stream is stream produced by transforming all elements of stream via flow.
Fuses sources, sinks and flows and produces a result and a leftover.
let r, leftover = Stream.run ~from:source ~via:flow ~into:sinkStreams elements from source into sink via a stream transformer flow. In addition to the result value r produced by sink, a leftover source is returned, if source was not exhausted.
NOTE: If a leftover source is produced, it is required to either consume it or manually dispose its resources. Not doing so might lead to resource leaks.
I/O Streams.