@eagleoutice/flowr - v2.13.1
    Preparing search index...

    Interface DataflowProcessorInformation<OtherInfo>

    interface DataflowProcessorInformation<OtherInfo> {
        builtInNoEnv?: NodeId;
        cds: ControlDependency[] | undefined;
        completeAst: NormalizedAst<OtherInfo>;
        ctx: FlowrAnalyzerContext;
        environment: REnvironmentInformation;
        parser: Parser<KnownParserType>;
        precomputedFirstArg?: { info: DataflowInformation; rootId: NodeId };
        precomputedValue?: { info: DataflowInformation; nodeId: NodeId };
        processors: DataflowProcessors<OtherInfo>;
        referenceChain: (string | undefined)[];
    }

    Type Parameters

    • OtherInfo
    Index

    Properties

    builtInNoEnv?: NodeId

    If set, the function call with this id is known to resolve to built-ins only, so its vertex needs no environment snapshot (it would be discarded by markAsOnlyBuiltIn anyway).

    cds: ControlDependency[] | undefined

    The chain of control-flow NodeIds that lead to the current node (e.g., of known ifs).

    completeAst: NormalizedAst<OtherInfo>

    Initial and frozen ast-information

    The flowr context used for environment seeding, files, and precision control, ...

    Correctly contains pushed local scopes introduced by function scopes. Will by default not contain any symbol-bindings introduced along the way; they have to be decorated when moving up the tree.

    precomputedFirstArg?: { info: DataflowInformation; rootId: NodeId }

    Escape hatch for hot recursive paths. When set and its rootId matches the function call currently being processed by processAllArguments, its info is used as the already-processed first argument instead of processing that argument again.

    precomputedValue?: { info: DataflowInformation; nodeId: NodeId }

    Companion to precomputedFirstArg: when set and its nodeId matches the node processFunctionArgument is about to process as an argument's value, its info is used instead of processing (and recursing into) that node again. This allows to separate arg wrappers from their content!

    Other processors to be called by the given functions

    referenceChain: (string | undefined)[]

    The chain of file paths that lead to this inclusion. The most recent (last) entry is expected to always be the current one.