@making-sense/antlr-editor
Version:
ANTLR Typescript editor
24 lines (23 loc) • 887 B
TypeScript
import { Lexer, Parser } from "@making-sense/antlr4ng";
import { VocabularyPack } from "../utils/vocabularyPack";
import { RuleToken } from "./ruleToken";
export declare const rgxEscape: RegExp;
export declare const rgxReplace = "\\$&";
export declare class RuleTokenizer<L extends Lexer, P extends Parser> {
private vocabulary;
private readonly context;
constructor(vocabulary: VocabularyPack<L, P>);
tokenize(declaration: string): RuleToken[];
private isAtom;
private isModifier;
private addToken;
private finishAtom;
private finishModifier;
private unexpected;
private clearContext;
private lastToken;
ruleName(declaration: string, index: number): string;
static alternatives(tokens: RuleToken[]): RuleToken[][];
static parentheses(tokens: RuleToken[]): RuleToken[][];
static unnest(tokens: RuleToken[]): RuleToken[];
}