/** * Feeds inputs to this sink until it yields a result, then switches over to * the provided sink until it yields a result, finally combining the two * results with `f`. * * @tsplus static effect/core/stream/Sink.Aspects zipWith * @tsplus pipeable effect/core/stream/Sink zipWith */ export function zipWith( that: Sink, f: (z: Z, z1: Z1) => Z2 ) { return (self: Sink): Sink => self.flatMap((z) => that.map((z1) => f(z, z1))) }