Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/text-parser/src/ |
Upload File : |
import { Type } from 'main.core'; export type TreeIndex = Map<number, [boolean, TreeIndex]>; export class TokenTree { #index: TreeIndex = new Map(); getTreeIndex(): TreeIndex { return this.#index; } addToken(token: string): void { if (!Type.isStringFilled(token)) { return; } let index = this.#index; for (let i = 0; i < token.length; i++) { const codePoint: number = token.codePointAt(i); if (i === token.length - 1) { if (index.has(codePoint)) { index.get(codePoint)[0] = true; } else { index.set(codePoint, [true, new Map()]); } } else { if (!index.has(codePoint)) { index.set(codePoint, [false, new Map()]); } [, index] = index.get(codePoint); } } } }