UNPKG

thaw-grammar

Version:

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

56 lines 2.51 kB
import { IParser, ITokenizer } from 'thaw-interpreter-types'; import { GlobalInfoBase } from '../../../common/domain-object-model/global-info-base'; import { PrologClause } from './prolog-clause'; import { PrologGoal } from './prolog-goal'; import { IPrologExpression } from './interfaces/iprolog-expression'; import { IPrologVariable } from './interfaces/ivariable'; export declare class PrologGlobalInfo extends GlobalInfoBase<IPrologExpression> { static readonly ClauseAdded = "Clause added."; static readonly ClauseAlreadyExists = "An identical clause is already in the clause list."; static readonly IsomorphicClauseAlreadyExists = "An isomorphic clause is already in the clause list."; static readonly IsomorphicOrMoreGeneralClauseAlreadyExists = "An isomorphic or more general clause is already in the clause list."; static readonly OperatorAdded = "Operator added."; static readonly InvalidCommand = "Invalid command."; static readonly Satisfied = "Satisfied"; static readonly NotSatisfied = "Not satisfied"; private variableRenameNum; private allMode; private solutionCollectionMode; private numSolutionsFound; private readonly DefaultModule; private guidNumber; private readonly falseVal; private readonly trueVal; constructor(options?: { parser?: IParser; tokenizer?: ITokenizer; }); toString(): string; get falseValue(): IPrologExpression; get trueValue(): IPrologExpression; valueIsFalse(value: IPrologExpression): boolean; valueIsInteger(value: IPrologExpression): boolean; valueAsInteger(value: IPrologExpression): number; integerAsValue(value: number): IPrologExpression; Clear(): void; FindFirstSolution(): void; FindAllSolutions(): void; GetNextUniqueVariable(): IPrologVariable; private GetVariablesFromGoalList; GetListOfBindingVariablesFromGoalList(goalListParam: PrologGoal[]): IPrologVariable[]; private AutomaticPrint; private Unifiable2; private NotUnifiable2; private Equals2; private NotEquals2; private doIntegerArithmetic; private doIntegerComparison; private createSubstitutionForArithmeticOperation; private ProveGoalList; private ProveGoalListUsingModule; ProcessInput(parseResult: PrologClause | PrologGoal[], currentModuleName?: string): string; private FindModule; evaluateToString(str: string): string; private getNextGuid; } //# sourceMappingURL=prolog-global-info.d.ts.map