Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

std/streams/mod.ts

Deno standard library
Go to Latest
The Standard Library has been moved to JSR. See the blog post for details.
import * as mod from "https://deno.land/std@0.138.0/streams/mod.ts";

Streams

Classes

A variable-sized buffer of bytes with read() and write() methods.

Transform a stream into a stream where each chunk is divided by a given delimiter.

A TransformStream that will only read & enqueue size amount of bytes. This operation is chunk based and not BYOB based, and as such will read more than needed.

A TransformStream that will only read & enqueue size amount of chunks.

c
LineStream
deprecated

Transform a stream into a stream where each chunk is divided by a given delimiter.

Transform a stream into a stream where each chunk is divided by a newline, be it \n or \r\n.

Functions

Copies from src to dst until either EOF (null) is read from src or an error occurs. It resolves to the number of bytes copied or rejects with the first error encountered while copying.

Turns a Reader, r, into an async iterator.

Turns a ReaderSync, r, into an iterator.

Merge multiple streams into a single one, not taking order into account. If a stream ends before other ones, the other will continue adding data, and the finished one will not add any more data.

Create a ReadableStream from any kind of iterable.

Create a ReadableStream<Uint8Array> from from a Deno.Reader.

Read Reader r until EOF (null) and resolve to the content as Uint8Array`.

Synchronously reads Reader r until EOF (null) and returns the content as Uint8Array.

Create a Deno.Reader from an iterable of Uint8Arrays.

Create a Reader from a ReadableStreamDefaultReader.

Create a WritableStream from a Writer.

Write all the content of the array buffer (arr) to the writer (w).

Synchronously write all the content of the array buffer (arr) to the writer (w).

Create a Writer from a WritableStreamDefaultWriter.

Merge multiple streams into a single one, taking order into account, and each stream will wait for a chunk to enqueue before the next stream can append another chunk. If a stream ends before other ones, the other will continue adding data in order, and the finished one will not add any more data.