deno.land / std@0.224.0 / streams / _common.ts

_common.ts
View Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.// This module is browser compatible.
export const DEFAULT_CHUNK_SIZE = 16_640;export const DEFAULT_BUFFER_SIZE = 32 * 1024;
/** Generate longest proper prefix which is also suffix array. */export function createLPS(pat: Uint8Array): Uint8Array { const length = pat.length; const lps = new Uint8Array(length); lps[0] = 0; let prefixEnd = 0; let i = 1; while (i < length) { if (pat[i] === pat[prefixEnd]) { prefixEnd++; lps[i] = prefixEnd; i++; } else if (prefixEnd === 0) { lps[i] = 0; i++; } else { prefixEnd = lps[prefixEnd - 1]!; } } return lps;}
std

Version Info

Tagged at
6 months ago