Skip to main content
Module

x/rimbu/mod.ts>Reducer.pipe

Rimbu is a TypeScript library focused on immutable, performant, and type-safe collections and other tools.
Latest
variable Reducer.pipe
import { Reducer } from "https://deno.land/x/rimbu@1.2.1/mod.ts";
const { pipe } = Reducer;

Returns a Reducer instance that first applies this reducer, and then applies the given next reducer to each output produced by the previous reducer.

Examples

Example 1

Stream.of(1, 2, 3)
 .reduce(
   Reducer.pipe(Reducer.product, Reducer.sum)
 )
// => 9

type

{ <I, O1, O2>(reducer1: Reducer<I, O1>, reducer2: Reducer<O1, O2>): Reducer<I, O2>; <I, O1, O2, O3>(
reducer1: Reducer<I, O1>,
reducer2: Reducer<O1, O2>,
reducer3: Reducer<O2, O3>,
): Reducer<I, O3>; <I, O1, O2, O3, O4>(
reducer1: Reducer<I, O1>,
reducer2: Reducer<O1, O2>,
reducer3: Reducer<O2, O3>,
reducer4: Reducer<O2, O4>,
): Reducer<I, O4>; <I, O1, O2, O3, O4, O5>(
reducer1: Reducer<I, O1>,
reducer2: Reducer<O1, O2>,
reducer3: Reducer<O2, O3>,
reducer4: Reducer<O2, O4>,
reducer5: Reducer<O2, O5>,
): Reducer<I, O5>; }