Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

x/rimbu/common/reducer.ts>Reducer.combineObj

Rimbu is a TypeScript library focused on immutable, performant, and type-safe collections and other tools.
Go to Latest
function Reducer.combineObj
import { Reducer } from "https://deno.land/x/rimbu@0.13.1/common/reducer.ts";
const { combineObj } = Reducer;

Returns a Reducer that combines multiple input reducers by providing input values to all of them and collecting the outputs in the shape of the given object.

Examples

Example 1

const red = Reducer.combineObj({
  theSum: Reducer.sum,
  theAverage: Reducer.average
});

Stream.range({ amount: 9 }).reduce(red);
// => { theSum: 36, theAverage: 4 }

Type Parameters

T
R extends { readonly [key: string]: unknown; }

Parameters

reducerObj: readonly [K in keyof R]: Reducer<T, R[K]> & Record<string, Reducer<T, unknown>>
  • an object of keys, and reducers corresponding to those keys