@eagleoutice/flowr-dev
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
22 lines (21 loc) • 1.36 kB
TypeScript
import type { LinkedInputEntryPoint, LinkedInputObject, NarrowingFunction } from './simple-input-classifier';
import { BuiltInIndex } from '../../../dataflow/environments/query-fn-props';
/**
* Objects that a framework binds for its users, without a definition visible in the code.
* The `withParams` and `requires` guards keep ordinary functions that happen to have a parameter of the same
* name out of this; where the framework is handed the function, {@link LinkedInputEntryPoints} is exact instead.
* @see {@link LinkedInputObject}
*/
export declare const LinkedInputObjects: readonly LinkedInputObject[];
/**
* The functions whose result is bounded no matter what flows in, read back from the {@link CallProp.Narrows}
* built-ins: with an {@link ArgProp.Bounds} parameter the result is one of that argument's values (`match.arg`
* and its `choices`), without one it is a count, an index, or a logical of the call's own making. Label a
* built-in `Narrows` (in the {@link DefaultBuiltinConfig} or your own definitions) and it shows up here.
*/
export declare function narrowingFunctions(index?: BuiltInIndex): readonly NarrowingFunction[];
/**
* Calls that hand a function to a framework which binds its parameters by position.
* @see {@link LinkedInputEntryPoint}
*/
export declare const LinkedInputEntryPoints: readonly LinkedInputEntryPoint[];