Interface ExprEngine

interface ExprEngine {
    addAtomListener(listener): void;
    addListener(listener): void;
    clearBindings(): void;
    defineAtomHandler<T>(builder, type, guard): void;
    defineFunction(name, lambda): void;
    getBinding(opr, target): U;
    getUserFunction(name): U;
    hasBinding(opr, target): boolean;
    hasUserFunction(name): boolean;
    popDirective(): void;
    pushDirective(directive, value): void;
    release(): void;
    removeAtomListener(listener): void;
    removeListener(listener): void;
    renderAsString(expr, config?): string;
    setBinding(opr, binding): void;
    setUserFunction(name, userfunc): void;
    simplify(expr): U;
    symbol(concept): Sym;
    valueOf(expr): U;
}

Hierarchy

  • Pick<ProgramEnv, "clearBindings">
  • Pick<ProgramControl, "pushDirective" | "popDirective">
    • ExprEngine

Methods

  • Type Parameters

    • T extends Atom

    Parameters

    • builder: ExprHandlerBuilder<T>
    • type: string
    • guard: ((expr) => boolean)
        • (expr): boolean
        • Parameters

          • expr: Atom

          Returns boolean

    Returns void

  • Parameters

    • name: Sym
    • lambda: LambdaExpr

    Returns void

  • Returns void

  • Parameters

    • directive: number
    • value: number

    Returns void

  • Parameters

    • expr: U
    • Optional config: Partial<RenderConfig>

    Returns string