From 37f501ac2f0d898634e408cc0c1c30090c4db796 Mon Sep 17 00:00:00 2001 From: Oscar <71343264+0scvr@users.noreply.github.com> Date: Thu, 26 Oct 2023 10:15:24 +0000 Subject: [PATCH] chore: remove deprecated `BytesList` in readDelim Signed-off-by: Oscar <71343264+0scvr@users.noreply.github.com> --- io/read_delim.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/io/read_delim.ts b/io/read_delim.ts index 6e3de5cb8d28a..884fe80f1020f 100644 --- a/io/read_delim.ts +++ b/io/read_delim.ts @@ -1,7 +1,6 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. // This module is browser compatible. -import { BytesList } from "../bytes/bytes_list.ts"; import type { Reader } from "../types.d.ts"; /** Generate longest proper prefix which is also suffix array. */ @@ -37,7 +36,7 @@ export async function* readDelim( // Avoid unicode problems const delimLen = delim.length; const delimLPS = createLPS(delim); - const chunks = new BytesList(); + let chunks = new Uint8Array(); const bufSize = Math.max(1024, delimLen + 1); // Modified KMP @@ -48,15 +47,15 @@ export async function* readDelim( const result = await reader.read(inspectArr); if (result === null) { // Yield last chunk. - yield chunks.concat(); + yield chunks; return; } else if (result < 0) { // Discard all remaining and silently fail. return; } - chunks.add(inspectArr, 0, result); + chunks = new Uint8Array([...chunks, ...inspectArr.slice(0, result)]); let localIndex = 0; - while (inspectIndex < chunks.size()) { + while (inspectIndex < chunks.length) { if (inspectArr[localIndex] === delim[matchIndex]) { inspectIndex++; localIndex++; @@ -67,7 +66,7 @@ export async function* readDelim( const readyBytes = chunks.slice(0, matchEnd); yield readyBytes; // Reset match, different from KMP. - chunks.shift(inspectIndex); + chunks = chunks.slice(inspectIndex); inspectIndex = 0; matchIndex = 0; }