thaw-grammar
Version:
Implementations of the grammars of several programming languages, including LISP, Scheme, Prolog, and the Lambda Calculus.
22 lines • 1.09 kB
TypeScript
import { IImmutableSet } from 'thaw-common-utilities.ts';
import { PrologGlobalInfo } from './prolog-global-info';
import { PrologGoal } from './prolog-goal';
import { IPrologNumber } from './interfaces/iprolog-number';
import { ISubstitution } from './interfaces/isubstitution';
import { IPrologVariable } from './interfaces/ivariable';
export declare class PrologClause {
readonly Lhs: PrologGoal;
readonly Rhs: PrologGoal[];
constructor(lhs: PrologGoal, rhs: PrologGoal[]);
toString(): string;
FindBindingVariables(): IImmutableSet<IPrologVariable>;
GetListOfBindingVariables(): IPrologVariable[];
ContainsVariable(v: IPrologVariable): boolean;
ApplySubstitution(substitution: ISubstitution): PrologClause;
private isVariableInArrayOfVariables;
RenameVariables(variablesToAvoid: IImmutableSet<IPrologVariable>, globalInfo: PrologGlobalInfo): PrologClause;
Unify(otherExpr: PrologClause): ISubstitution | undefined;
get IsGround(): boolean;
EvaluateToNumber(): IPrologNumber | undefined;
}
//# sourceMappingURL=prolog-clause.d.ts.map