thaw-grammar
Version:
Implementations of the grammars of several programming languages, including LISP, Scheme, Prolog, and the Lambda Calculus.
19 lines • 767 B
TypeScript
import { IEnvironmentFrame } from './environment-frame';
import { IExpression } from './iexpression';
import { IGlobalInfo } from './iglobal-info';
export declare function isVariableT<T>(obj: unknown): obj is Variable<T>;
export interface IVariable<T> extends IExpression<T> {
readonly name: string;
readonly line: number;
readonly column: number;
}
export declare class Variable<T> implements IVariable<T> {
readonly name: string;
readonly line: number;
readonly column: number;
readonly typename: string;
constructor(name: string, line?: number, column?: number);
toString(): string;
evaluate(globalInfo: IGlobalInfo<T>, localEnvironment?: IEnvironmentFrame<T>, options?: unknown): T;
}
//# sourceMappingURL=variable.d.ts.map