pipe
, pipeline
, and compose
functions with TypeScript definitions
This package not only provides simple pipe
, pipeline
, and compose
implementation, it also provides many TypeScript overloads for each function. [See index.d.ts]
Signature: pipe (value, ...functions) → result
const y = pipe(x0, f1, f2, f3)
is equivalent to
const x1 = f1(x0)
const x2 = f2(x1)
const x3 = f3(x2)
const y = f3(x3)
or
const y = f3(f2(f1(x0)))
Signature: pipeline (...functions) → function
const fn = pipeline(f0, f1, f2, f3)
is equivalent to
const fn = (...args) => f3(f2(f1(f0(...args))))
Signature: compose (...functions) → function
const fn = compose(f3, f2, f1, f0)
is equivalent to
const fn = (...args) => f3(f2(f1(f0(...args))))
It is just an alias of pipeline
// pipe
const y0 = pipe(x, f1, f2, f3, f4)
// pipeline
const g1 = pipeline(f0, f1, f2, f3, f4)
const y1 = g1(...args)
// compose
const g2 = compose(f4, f3, f2, f1, f0)
const y2 = g2(...args)