package flux
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=ad74df51aaf796f4ed14f56296380a3aa795a8d6f9217b6383c9ac833ff334fc
sha512=4d03ef0130a0df993dd3e1c879c45162e57f48c2535f115f23e572214f365a7a052056c89661b4d7bc198209c0adf57dae6f96ea82b6b5c5f30223b653a29f5c
doc/flux/Flux/Stream/index.html
Module Flux.StreamSource
Creating streams.
range ~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.
Transforming a stream.
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.
Combining streams.
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.
Consumers.
each fn stream applies an function fn to all elements of stream. Each function is performed cooperatively via the Miou scheduler.
Adaptors.
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.