Skip to main content

@std/async@0.215.0

latest
Works with
It is unknown whether this package works with Browsers, Deno, Node.js, Cloudflare Workers, Bun
It is unknown whether this package works with Browsers
It is unknown whether this package works with Deno
It is unknown whether this package works with Node.js
It is unknown whether this package works with Cloudflare Workers
It is unknown whether this package works with Bun
JSR Score70%
Published2 years ago (0.215.0)
class MuxAsyncIterator
implements AsyncIterable<T>

Multiplexes multiple async iterators into a single stream. It currently makes an assumption that the final result (the value returned and not yielded from the iterator) does not matter; if there is any result, it is discarded.

Examples

Example 1

import { MuxAsyncIterator } from "@std/async/mux_async_iterator";

async function* gen123(): AsyncIterableIterator<number> {
  yield 1;
  yield 2;
  yield 3;
}

async function* gen456(): AsyncIterableIterator<number> {
  yield 4;
  yield 5;
  yield 6;
}

const mux = new MuxAsyncIterator<number>();
mux.add(gen123());
mux.add(gen456());
for await (const value of mux) {
  // ...
}
// ..

Type Parameters

Methods

Implements an async iterator for the stream.

add(iterable: AsyncIterable<T>): void

Add an async iterable to the stream.

iterate(): AsyncIterableIterator<T>

Returns an async iterator of the stream.

Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@std/async

Import symbol

import { MuxAsyncIterator } from "@std/async/mux_async_iterator";
or

Import directly with a jsr specifier

import { MuxAsyncIterator } from "jsr:@std/async/mux_async_iterator";