Brings back Fluture's fluent method API, for the nostalgic developer.
import {resolve, reject} from 'fluture';
import {fluent} from 'fluenture';
fluent (resolve (42))
.map (x => x / 2)
.chain (x => reject (x + 21))
.swap ()
.fork (console.error, console.log)
We're using the Fluenture a b
type here to denote instances of Future
that were enhanced with a fluent method API. One can think of the
Fluenture
type as a subtype of Future
: any instances of it are also
instances of Future
.
Enhance a Future with the fluent method API.
This function is idempotent.
Strip a fluent Future (or "Fluenture") from its method API.
This function is idempotent.
This function is equivalent to Fluture's built-in pipe
function, with
once exception; If a Future is returned from the given function, it is
automatically wrapped using fluent
, so as to keep the fluent
method chain intact.
Fluent pipe
.
Fluent alt
.
Fluent and
.
Fluent ap
.
Fluent bichain
.
Fluent bimap
.
Fluent both
.
Fluent cache
.
Fluent chain
.
Fluent chainRej
.
Fluent coalesce
.
Fluent lastly
.
Fluent map
.
Fluent mapRej
.
Fluent pap
.
Fluent race
.
Fluent swap
.
Fluent done
.
Fluent fork
.
Fluent forkCatch
.
Fluent promise
.
Fluent value
.