combine8<T, A, B, C, D, E, F, G, H> static method
FlowState<T>
combine8<
T, A, B, C, D, E, F, G, H>( - FlowState<A> one,
- FlowState<B> two,
- FlowState<C> three,
- FlowState<D> four,
- FlowState<E> five,
- FlowState<F> six,
- FlowState<G> seven,
- FlowState<H> eight, [
- T combiner(
- A a,
- B b,
- C c,
- D d,
- E e,
- F f,
- G g,
- H h,
)?,
])
Implementation
static FlowState<T> combine8<T, A, B, C, D, E, F, G, H>(
FlowState<A> one,
FlowState<B> two,
FlowState<C> three,
FlowState<D> four,
FlowState<E> five,
FlowState<F> six,
FlowState<G> seven,
FlowState<H> eight, [
T Function(A a, B b, C c, D d, E e, F f, G g, H h)? combiner,
]) {
combiner ??= (a, b, c, d, e, f, g, h) => [a, b, c, d, e, f, g, h] as T;
final combinedStream = Rx.combineLatest8<A, B, C, D, E, F, G, H, T>(
one.stream,
two.stream,
three.stream,
four.stream,
five.stream,
six.stream,
seven.stream,
eight.stream,
combiner,
);
final initialCombinedValue = combiner(
one.current,
two.current,
three.current,
four.current,
five.current,
six.current,
seven.current,
eight.current,
);
return FlowState<T>(initialCombinedValue).._subject.addStream(combinedStream);
}