UNPKG

2.86 kBTypeScriptView Raw
1import { FilteredValueToken, TagToken, HTMLToken, HashToken, QuotedToken, LiquidTagToken, OutputToken, ValueToken, Token, RangeToken, FilterToken, TopLevelToken, OperatorToken, LiteralToken, IdentifierToken, NumberToken } from '../tokens';
2import { Trie, TokenizationError } from '../util';
3import { Operators, Expression } from '../render';
4import { NormalizedFullOptions } from '../liquid-options';
5import { FilterArg } from './filter-arg';
6export declare class Tokenizer {
7 input: string;
8 file?: string | undefined;
9 private range?;
10 p: number;
11 N: number;
12 private rawBeginAt;
13 private opTrie;
14 private literalTrie;
15 constructor(input: string, operators?: Operators, file?: string | undefined, range?: [number, number] | undefined);
16 readExpression(): Expression;
17 readExpressionTokens(): IterableIterator<Token>;
18 readOperator(): OperatorToken | undefined;
19 matchTrie<T>(trie: Trie<T>): number;
20 readFilteredValue(): FilteredValueToken;
21 readFilters(): FilterToken[];
22 readFilter(): FilterToken | null;
23 readFilterArg(): FilterArg | undefined;
24 readTopLevelTokens(options?: NormalizedFullOptions): TopLevelToken[];
25 readTopLevelToken(options: NormalizedFullOptions): TopLevelToken;
26 readHTMLToken(stopStrings: string[]): HTMLToken;
27 readTagToken(options?: NormalizedFullOptions): TagToken;
28 readToDelimiter(delimiter: string, respectQuoted?: boolean): number;
29 readOutputToken(options?: NormalizedFullOptions): OutputToken;
30 readEndrawOrRawContent(options: NormalizedFullOptions): HTMLToken | TagToken;
31 readLiquidTagTokens(options?: NormalizedFullOptions): LiquidTagToken[];
32 readLiquidTagToken(options: NormalizedFullOptions): LiquidTagToken | undefined;
33 error(msg: string, pos?: number): TokenizationError;
34 assert(pred: unknown, msg: string | (() => string), pos?: number): void;
35 snapshot(begin?: number): string;
36 /**
37 * @deprecated use #readIdentifier instead
38 */
39 readWord(): IdentifierToken;
40 readIdentifier(): IdentifierToken;
41 readTagName(): string;
42 readHashes(jekyllStyle?: boolean): HashToken[];
43 readHash(jekyllStyle?: boolean): HashToken | undefined;
44 remaining(): string;
45 advance(step?: number): void;
46 end(): boolean;
47 readTo(end: string): number;
48 readValue(): ValueToken | undefined;
49 readNumber(): NumberToken | undefined;
50 readLiteral(): LiteralToken | undefined;
51 readRange(): RangeToken | undefined;
52 readValueOrThrow(): ValueToken;
53 readQuoted(): QuotedToken | undefined;
54 readFileNameTemplate(options: NormalizedFullOptions): IterableIterator<TopLevelToken>;
55 match(word: string): boolean;
56 rmatch(pattern: string): boolean;
57 peekType(n?: number): number;
58 peek(n?: number): string;
59 skipBlank(): void;
60}