interface ProcessKnownFunctionCallInput<OtherInfo> {
    args: readonly (
        | "<>"
        | RExpressionList<OtherInfo & ParentInformation>
        | RFunctionDefinition<OtherInfo & ParentInformation>
        | RNamedFunctionCall<OtherInfo & ParentInformation>
        | RUnnamedFunctionCall<OtherInfo & ParentInformation>
        | RParameter<OtherInfo & ParentInformation>
        | RArgument<OtherInfo & ParentInformation>
        | RComment<OtherInfo & ParentInformation>
        | RLineDirective<OtherInfo & ParentInformation>
        | RForLoop<OtherInfo & ParentInformation>
        | RRepeatLoop<OtherInfo & ParentInformation>
        | RWhileLoop<OtherInfo & ParentInformation>
        | RIfThenElse<OtherInfo & ParentInformation>
        | RNamedAccess<OtherInfo & ParentInformation>
        | RIndexAccess<OtherInfo & ParentInformation>
        | RUnaryOp<OtherInfo & ParentInformation>
        | RBinaryOp<OtherInfo & ParentInformation>
        | RSymbol<OtherInfo & ParentInformation, string>
        | RNumber<OtherInfo & ParentInformation>
        | RString<OtherInfo & ParentInformation>
        | RLogical<OtherInfo & ParentInformation>
        | RBreak<OtherInfo & ParentInformation>
        | RNext<OtherInfo & ParentInformation>
        | RPipe<OtherInfo & ParentInformation>)[];
    data: DataflowProcessorInformation<OtherInfo & ParentInformation>;
    forceArgs?: "all" | readonly boolean[];
    hasUnknownSideEffect?: boolean;
    markAsNSE?: readonly number[];
    name: RSymbol<OtherInfo & ParentInformation, string>;
    patchData?: ((data: DataflowProcessorInformation<OtherInfo & ParentInformation>, arg: number) => DataflowProcessorInformation<OtherInfo & ParentInformation>);
    reverseOrder?: boolean;
    rootId: NodeId;
}

Type Parameters

  • OtherInfo

Hierarchy (view full)

Hierarchy-Diagram

UML class diagram of ProcessKnownFunctionCallInput

Properties

forceArgs?: "all" | readonly boolean[]

which of the arguments should be forced? this may be all, e.g., if the function itself is unknown on encounter

hasUnknownSideEffect?: boolean

Does the call have a side effect that we do not know a lot about which may have further consequences?

markAsNSE?: readonly number[]

which arguments are to be marked as EdgeType#NonStandardEvaluation|non-standard-evaluation?

allows passing a data processor in-between each argument

reverseOrder?: boolean

should arguments be processed from right to left? This does not affect the order recorded in the call but of the environments

rootId: NodeId