Another small processing pipeline library for Nodejs.
middles
enables you to compose a processing pipeline out of synchronous and asynchronous processing functions. Later, you can push arguments into the pipeline, and those items are processed by each successive processor. After the pipeline runs, either the result of the final processor is returned, or an error is thrown.
In your shell:
npm install middles
In your module:
import { Pipeline } from 'middles';
A pipeline is a sequence of processing steps. Each item pushed onto the pipe, is processed by each step, in the order in which the steps were added.
import { Pipeline } from 'middles';
const doubled = (n: number): number => n << 1;
const magnitude = (n: number): number => n * 10;
const half = (n: number): number => n >> 1;
const contrived = new Pipeline()
.use(doubled)
.use(magnitude)
.use(magnitude)
.use(half)
.use(doubled);
const res = contrived.push(3);
Well written, highly composable processors should exhibit these characteristics:
- distrusts inputs
- only proceeds if it can succeed (fail-fast)
- seldom preserves state (prefer stateless behaviors)
- performs a single responsibility
- strive for deterministic behavior