with4<T, A, B, C, D, R> static method

WithLatestFromStreamTransformer<T, dynamic, R> with4<T, A, B, C, D, R>(
  1. Stream<A> latestFromStream1,
  2. Stream<B> latestFromStream2,
  3. Stream<C> latestFromStream3,
  4. Stream<D> latestFromStream4,
  5. R fn(
    1. T t,
    2. A a,
    3. B b,
    4. C c,
    5. D d,
    ),
)

Constructs a StreamTransformer that emits when the source Stream emits, combining the latest values from all latestFromStreams using the provided function fn.

Implementation

static WithLatestFromStreamTransformer<T, dynamic, R> with4<T, A, B, C, D, R>(
  Stream<A> latestFromStream1,
  Stream<B> latestFromStream2,
  Stream<C> latestFromStream3,
  Stream<D> latestFromStream4,
  R Function(T t, A a, B b, C c, D d) fn,
) =>
    WithLatestFromStreamTransformer<T, dynamic, R>(
      [
        latestFromStream1,
        latestFromStream2,
        latestFromStream3,
        latestFromStream4,
      ],
      (s, values) {
        return fn(
          s,
          values[0] as A,
          values[1] as B,
          values[2] as C,
          values[3] as D,
        );
      },
    );