@gobstones/gobstones-parser
Version:
Gobstones parser
35 lines • 1.42 kB
TypeScript
import { GbsWarning } from './exceptions';
import { Input, SourceReader } from './reader';
import { Token } from './token';
import { ASTDef } from './ast';
export declare class Lexer {
private _multifileReader;
private _reader;
private _warnings;
private _delimiterStack;
private _pendingAttributes;
private _languageOptions;
constructor(input: Input);
nextToken(): Token;
warnings(): GbsWarning[];
_findNextToken(): boolean;
_readStringWhile(condition: Function): string;
_readStringConstant(): Token;
_readSymbol(): Token;
_ignoreWhitespaceAndComments(): void;
_ignoreWhitespace(): boolean;
_ignoreComments(): boolean;
_startSingleLineComment(): boolean;
_ignoreSingleLineComment(): void;
_ignoreMultilineComment(left: string, right: string): void;
_readInvisiblePragma(left: string, right: string, pragmaDelim: string): string[];
_readInvisibleStringUntilDelimiter(delimiter: string): string;
_evaluatePragma(startPos: SourceReader, pragma: string[]): void;
_emitWarning(startPos: SourceReader, endPos: SourceReader, reason: string, args: any[]): void;
_checkBalancedDelimiters(token: Token): void;
getPendingAttributes(): Record<string, ASTDef>;
setAttribute(key: string, value: any): void;
getLanguageOptions(): string[];
addLanguageOption(option: string): void;
}
//# sourceMappingURL=lexer.d.ts.map