reduce<C extends Object, P1 extends Object, P2 extends Object, P3 extends Object, P4 extends Object, P5 extends Object> static method
ChildPod<Object, C>
reduce<C extends Object, P1 extends Object, P2 extends Object, P3 extends Object, P4 extends Object, P5 extends Object>(
- TResponderFn5<
P1, P2, P3, P4, P5> responder, - TReducerFn5<
C, P1, P2, P3, P4, P5> reducer
Reduces 5 Pods into a ChildPod.
Implementation
static ChildPod<Object, C> reduce<
C extends Object,
P1 extends Object,
P2 extends Object,
P3 extends Object,
P4 extends Object,
P5 extends Object>(
TResponderFn5<P1, P2, P3, P4, P5> responder,
TReducerFn5<C, P1, P2, P3, P4, P5> reducer,
) {
late (
GenericPod<P1>,
GenericPod<P2>,
GenericPod<P3>,
GenericPod<P4>,
GenericPod<P5>,
) cached;
return ChildPod<Object, C>(
responder: () {
cached = responder();
return [cached.$1, cached.$2, cached.$3, cached.$4, cached.$5];
},
reducer: (_) =>
reducer(cached.$1, cached.$2, cached.$3, cached.$4, cached.$5),
);
}