@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
25 lines (24 loc) • 1.04 kB
TypeScript
import type { Feature } from '../../feature';
import type { Writable } from 'ts-essentials';
import { type CommonSyntaxTypeCounts } from '../../common-syntax-probability';
declare const initialFunctionUsageInfo: {
allFunctionCalls: number;
args: Record<number, bigint | CommonSyntaxTypeCounts>;
/** `a(b(), c(3, d()))` has 3 (`b`, `c`, `d`) */
nestedFunctionCalls: number;
deepestNesting: number;
unnamedCalls: number;
};
export type FunctionUsageInfo = Writable<typeof initialFunctionUsageInfo>;
export declare const AllCallsFileBase = "all-calls";
export declare const usedFunctions: Feature<FunctionUsageInfo>;
export type FunctionCallInformation = [
/** the name of the called function, or undefined if this was an unnamed function call */
name: string | undefined,
location: [line: number, character: number] | undefined,
numberOfArguments: number,
/** whether this was called from a namespace, like `a::b()` */
namespace: string | undefined,
knownDefinitionInFile: 0 | 1
];
export {};