SheetXL - v0.8.0-beta.9+sites.210.e2d420901
    Preparing search index...

    Interface FormulaNode

    A read-only "lite" view of one node of a formula's AST, as presented to a FormulaTransform.

    Values are DISPLAY-resolved — a named node presents its display text (NamedRef), a function node its canonical (English) name, a tableReference/tableColumn its display name, and a cell node its coordinates with a sheet display-name qualifier. Stable internal ids never appear. Internal compilation details (trivia/whitespace, evaluation indices, caches) are not exposed; whitespace and typed images are carried across a transform by the engine invisibly.

    type uses the same vocabulary as FormulaToken.type ('function', 'infix', 'prefix', 'postfix', 'named', 'cell', 'tableReference', 'tableSpecifier', 'tableColumn', 'number', 'string', 'boolean', 'error', …).

    A transform returns nodes as PLAIN OBJECTS in this shape — either a shallow spread-copy of a node it received ({ ...node, value } to rename, { ...node, inputs } to re-child; identity and whitespace trivia are preserved through a spread) or a fresh literal ({ type: 'function', value: name, inputs }). The engine derives the internals (reference flags, images) from type + value; there is no node class to construct.

    interface FormulaNode {
        inputs?: readonly FormulaNode[] | null;
        isReference?: boolean;
        legacyIntersect?: boolean;
        type: string;
        value?: any;
    }
    Index
    inputs?: readonly FormulaNode[] | null

    Child nodes, or null/absent for a leaf.

    isReference?: boolean

    true when the node is part of a reference expression (a cell, a range operator, a named reference, a structured-reference part).

    legacyIntersect?: boolean

    The ROOT only: this formula came from a LEGACY (pre-dynamic-array) cell, so its whole tree evaluates in implicit-intersection VALUE mode.

    type: string

    The node type — same vocabulary as FormulaToken.type.

    value?: any

    The display-resolved value; the shape depends on type (see FormulaToken.value).