@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
21 lines (20 loc) • 1.16 kB
TypeScript
import type { DataflowProcessorInformation } from '../../../../../processor';
import { DataflowInformation } from '../../../../../info';
import type { ParentInformation } from '../../../../../../r-bridge/lang-4.x/ast/model/processing/decorate';
import { type RFunctionArgument } from '../../../../../../r-bridge/lang-4.x/ast/model/nodes/r-function-call';
import type { RSymbol } from '../../../../../../r-bridge/lang-4.x/ast/model/nodes/r-symbol';
import type { NodeId } from '../../../../../../r-bridge/lang-4.x/ast/model/processing/node-id';
/** e.g. UseMethod(generic, object) */
interface S3DispatchConfig {
args: {
generic: string;
object: string;
};
/** For NextMethod/if `generic` is not given, try to infer from the closure? */
inferFromClosure?: boolean;
}
/**
* Process an S3 dispatch call like `UseMethod`.
*/
export declare function processS3Dispatch<OtherInfo>(name: RSymbol<OtherInfo & ParentInformation>, args: readonly RFunctionArgument<OtherInfo & ParentInformation>[], rootId: NodeId, data: DataflowProcessorInformation<OtherInfo & ParentInformation>, config: S3DispatchConfig): DataflowInformation;
export {};