esbuild-gas-plugin
Version:
esbuild plugin for Google Apps Script.
31 lines (30 loc) • 1.11 kB
JavaScript
;
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
// This module is browser compatible.
Object.defineProperty(exports, "__esModule", { value: true });
exports.readStringDelim = void 0;
const read_delim_js_1 = require("./read_delim.js");
/**
* Read Reader chunk by chunk, splitting based on delimiter.
*
* @example
* ```ts
* import { readStringDelim } from "https://deno.land/std@$STD_VERSION/io/read_string_delim.ts";
* import * as path from "https://deno.land/std@$STD_VERSION/path/mod.ts";
*
* 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);
* }
* ```
*/
async function* readStringDelim(reader, delim, decoderOpts) {
const encoder = new TextEncoder();
const decoder = new TextDecoder(decoderOpts?.encoding, decoderOpts);
for await (const chunk of (0, read_delim_js_1.readDelim)(reader, encoder.encode(delim))) {
yield decoder.decode(chunk);
}
}
exports.readStringDelim = readStringDelim;