async/stream_combine_utils library

Stream join/zip/combineLatest operators — roadmap #661.

Functions

combineLatestStreams<A, B, R>(Stream<A> a, Stream<B> b, R combine(A, B)) Stream<R>
Emits combine(latestA, latestB) whenever EITHER a or b emits, but only once both have produced at least one value (the standard "combineLatest").
zipStreams<A, B, R>(Stream<A> a, Stream<B> b, R combine(A, B)) Stream<R>
Pairs a and b by index, emitting combine(aᵢ, bᵢ) for each index until either stream completes (the standard "zip" operator).