brepjs API Reference
    Preparing search index...

    Interface ExtensionNode

    An operation the IR has no built-in kind for, materialized by the ExtensionEvaluator registered under name in EvaluatorOptions.extensions. optimize treats it as opaque: its children and params are optimized, the node itself is never folded.

    interface ExtensionNode {
        children: readonly IRNode[];
        data: JsonValue;
        freeParams: ReadonlySet<string>;
        kind: "Extension";
        name: string;
        output: OutputKind;
        params: Readonly<Record<string, Expr>>;
        structuralHash: bigint;
    }

    Hierarchy

    • IRNodeBase
      • ExtensionNode
    Index
    children: readonly IRNode[]
    data: JsonValue

    Frozen canonical copy of the builder input; neither key order nor -0 changes the hash.

    freeParams: ReadonlySet<string>
    kind: "Extension"
    name: string
    output: OutputKind

    Declared at build time for outputKindOf; evaluation does not check the materialized shape against it.

    params: Readonly<Record<string, Expr>>

    Scalar inputs, resolved to numbers against the env before the evaluator runs, so they take part in param invalidation.

    structuralHash: bigint