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