UNPKG

@mojir/lits

Version:

Lits is a pure functional programming language implemented in TypeScript

21 lines (20 loc) 713 B
import type { SourceCodeInfo, Token } from '../tokenizer/token'; import type { TokenStream } from '../tokenizer/tokenize'; import type { AstNode } from './types'; export declare class ParserContext { private readonly tokens; private position; private storedPosition; parseExpression: (precedence?: number) => AstNode; constructor(tokenStream: TokenStream); advance(): void; tryPeek(): Token | undefined; peek(): Token; isAtEnd(): boolean; peekSourceCodeInfo(): SourceCodeInfo | undefined; storePosition(): number; restorePosition(): void; peekAhead(count: number): Token | undefined; getPosition(): number; getTokenAt(pos: number): Token | undefined; }