UNPKG

@oazmi/build-tools

Version:

general deno build tool scripts which I practically use in all of my typescript repos

29 lines (28 loc) 1.02 kB
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. // This module is browser compatible. import { readDelim } from "./read_delim.js"; /** * Read Reader chunk by chunk, splitting based on delimiter. * * @example * ```ts * import { readStringDelim } from "@std/io/read-string-delim"; * import * as path from "@std/path"; * * const filename = path.join(Deno.cwd(), "std/io/README.md"); * let fileReader = await Deno.open(filename); * * for await (let line of readStringDelim(fileReader, "\n")) { * console.log(line); * } * ``` * * @deprecated (will be removed after 1.0.0) Use the {@link https://developer.mozilla.org/en-US/docs/Web/API/Streams_API | Web Streams API} instead. */ export async function* readStringDelim(reader, delim, decoderOpts) { const encoder = new TextEncoder(); const decoder = new TextDecoder(decoderOpts?.encoding, decoderOpts); for await (const chunk of readDelim(reader, encoder.encode(delim))) { yield decoder.decode(chunk); } }