UNPKG

thaw-grammar

Version:

Implementations of the grammars of several programming languages, including LISP, Scheme, Prolog, and the Lambda Calculus.

38 lines 1.57 kB
import { IParser, ITokenizer } from 'thaw-interpreter-types'; import { IEnvironmentFrame } from './environment-frame'; import { IFunctionDefinition } from './function-definition'; import { IGlobalInfo } from './iglobal-info'; import { IMacroDefinition } from './imacro-definition'; export declare abstract class GlobalInfoBase<T> implements IGlobalInfo<T> { protected readonly tokenizer: ITokenizer | undefined; protected readonly parser: IParser | undefined; readonly globalEnvironment: IEnvironmentFrame<T>; readonly functionDefinitions: Map<string, IFunctionDefinition<T>>; readonly macroDefinitions: Map<string, IMacroDefinition<T>>; dynamicScoping: boolean; debug: boolean; private printedText; protected constructor(options?: { parser?: IParser; tokenizer?: ITokenizer; }); initialize(): void; abstract get falseValue(): T; abstract get trueValue(): T; booleanAsValue(value: boolean): T; abstract valueIsFalse(value: T): boolean; abstract valueIsInteger(value: T): boolean; abstract valueAsInteger(value: T): number; abstract integerAsValue(value: number): T; loadPreset(presetName: string): string; loadPresets(): void; setScoping(dynamicScoping: boolean): void; setDebug(debug: boolean): void; clearPrintedText(): void; print(evaluatedArguments: T[]): void; protected printDirect(str: string): void; getPrintedText(): string; evaluate(str: string): T; evaluateToString(str: string): string; } //# sourceMappingURL=global-info-base.d.ts.map