package lwt-pipeline
Pipeline library for Lwt
Install
Dune Dependency
Authors
Maintainers
Sources
lwt_pipeline-release-0.1.tar.gz
md5=420fa855e112d8719c3211a65d1fe03a
sha512=0ee99fa08d93457a9be7adecb8ee204fb0576526a25bc1a9c442f831fbdbcc41a257fa9ecae063948ea60cb1d7a44ca685bcfe7061d9a6e2182c1bb4944703a8
Description
A library to handle pipelines (series of transformation) with support for Lwt-based concurrency.
Published: 06 Aug 2019
README
README
# Pipeline Pipeline is a library to build and execute processing pipelines with Lwt-based concurrency. -------------------------------------------------------------------------------- A pipeline (`('a, 'b) pipe`) is a series of steps (`('c, 'd) step`) which are daisy-chained in a type-safe way (`cons: ('a, 'b) step -> ('b, 'c) pipe -> ('a, 'c) pipe`). A step can either be: - synchronous (`sync: ('a -> 'b) -> ('a, 'b) step`) in which case its transformation is applied immediately to the data that traverses the pipeline, - asynchronous-sequential (`async_s: ('a -> 'b Lwt.t) -> ('a, 'b) step`) in which case its transformation is applied as an Lwt promise, but only one such promise is ever not resolved at a time, or - asynchronous-parallel (`async_p: ('a -> 'b Lwt.t) -> ('a, 'b) step`) in which case its transformation is applied as an Lwt promise, but multiple such promises cat be not resolved at the same time. When a pipeline is executed (`run: ('i, 'o) pipe -> 'i list -> 'o list Lwt.t`) each element of the input list goes through each of the steps one-by-one, and the order is always preserved. In addition, an optional `pool` argument can be used to limit the number of promises that can be not resolved at any given time.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page