Skip to main content
Go to Latest
File
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.// This module is browser compatible.
import type { Writer } from "../io/types.ts";
/** * Create a {@linkcode Writer} from a {@linkcode WritableStreamDefaultWriter}. * * @example * ```ts * import { copy } from "https://deno.land/std@$STD_VERSION/io/copy.ts"; * import { writerFromStreamWriter } from "https://deno.land/std@$STD_VERSION/streams/writer_from_stream_writer.ts"; * * using file = await Deno.open("./deno.land.html", { read: true }); * * const writableStream = new WritableStream({ * write(chunk): void { * console.log(chunk); * }, * }); * const writer = writerFromStreamWriter(writableStream.getWriter()); * await copy(file, writer); * ``` * * @deprecated (will be removed after 1.0.0) Use {@linkcode WritableStreamDefaultWriter} directly. */export function writerFromStreamWriter( streamWriter: WritableStreamDefaultWriter<Uint8Array>,): Writer { return { async write(p: Uint8Array): Promise<number> { await streamWriter.ready; await streamWriter.write(p); return p.length; }, };}