chain
functionfunction chain<
T0,
T1,
T2,
T3,
T4,
T5,
T6,
T7,
T8,
T9,
T10,
T11,
T12,
T13,
T14,
T15,
R
>(
initial: T0,
fn0: UnaryFunction<NoInfer<T0>, T1>,
fn1: UnaryFunction<NoInfer<T1>, T2>,
fn2: UnaryFunction<NoInfer<T2>, T3>,
fn3: UnaryFunction<NoInfer<T3>, T4>,
fn4: UnaryFunction<NoInfer<T4>, T5>,
fn5: UnaryFunction<NoInfer<T5>, T6>,
fn6: UnaryFunction<NoInfer<T6>, T7>,
fn7: UnaryFunction<NoInfer<T7>, T8>,
fn8: UnaryFunction<NoInfer<T8>, T9>,
fn9: UnaryFunction<NoInfer<T9>, T10>,
fn10: UnaryFunction<T10, T11>,
fn11: UnaryFunction<T11, T12>,
fn12: UnaryFunction<T12, T13>,
fn13: UnaryFunction<T13, T14>,
fn14: UnaryFunction<T14, T15>,
fn15: UnaryFunction<T15, R>
): R;Applies a series of functions to an initial value, passing the result of each function to the next.
Used to convert code that looks like:
const a = addB(addC({ a: 'a' }));
to:
const a = chain({ a: 'a' }, addB, addC);
See composable-options for an example of how this can be used.
Parameters
| Name | Type | Description |
|---|---|---|
| initial | T0 | Initial value to pass through the chain |
| fn0 | UnaryFunction<NoInfer<T0>, T1> | — |
| fn1 | UnaryFunction<NoInfer<T1>, T2> | — |
| fn2 | UnaryFunction<NoInfer<T2>, T3> | — |
| fn3 | UnaryFunction<NoInfer<T3>, T4> | — |
| fn4 | UnaryFunction<NoInfer<T4>, T5> | — |
| fn5 | UnaryFunction<NoInfer<T5>, T6> | — |
| fn6 | UnaryFunction<NoInfer<T6>, T7> | — |
| fn7 | UnaryFunction<NoInfer<T7>, T8> | — |
| fn8 | UnaryFunction<NoInfer<T8>, T9> | — |
| fn9 | UnaryFunction<NoInfer<T9>, T10> | — |
| fn10 | UnaryFunction<T10, T11> | — |
| fn11 | UnaryFunction<T11, T12> | — |
| fn12 | UnaryFunction<T12, T13> | — |
| fn13 | UnaryFunction<T13, T14> | — |
| fn14 | UnaryFunction<T14, T15> | — |
| fn15 | UnaryFunction<T15, R> | — |
Returns
RType Parameters
T0T1T2T3T4T5T6T7T8T9T10T11T12T13T14T15R