UNPKG

thaw-grammar

Version:

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

17 lines 989 B
import { Name } from 'thaw-interpreter-core'; import { IEnvironmentFrame } from './environment-frame'; import { IExpression } from './iexpression'; import { IGlobalInfo } from './iglobal-info'; export declare class OperatorUsage<T> implements IExpression<T> { readonly operatorName: Name; readonly expressionList: IExpression<T>[]; private readonly twoArgumentIntegerPredicates; private readonly twoArgumentIntegerOperators; constructor(operatorName: Name, expressionList: IExpression<T>[]); toString(): string; evaluate(globalInfo: IGlobalInfo<T>, localEnvironment?: IEnvironmentFrame<T>, options?: unknown): T; protected tryGetExpectedNumArgs(globalInfo: IGlobalInfo<T>): number | undefined; protected checkArgTypes(evaluatedArguments: T[]): string | undefined; protected evaluateAux(evaluatedArguments: T[], globalInfo: IGlobalInfo<T>, localEnvironment?: IEnvironmentFrame<T>, options?: unknown): T; } //# sourceMappingURL=operator-usage.d.ts.map