UNPKG

@eagleoutice/flowr

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

19 lines (18 loc) 1.24 kB
import type { DataflowInformation } from './info'; import type { DataflowProcessors } from './processor'; import type { NormalizedAst, ParentInformation } from '../r-bridge/lang-4.x/ast/model/processing/decorate'; import type { RParseRequests } from '../r-bridge/retriever'; import type { KnownParserType, Parser } from '../r-bridge/parser'; import type { FlowrConfigOptions } from '../config'; /** * The best friend of {@link produceDataFlowGraph} and {@link processDataflowFor}. * Maps every {@link RType} in the normalized AST to a processor. */ export declare const processors: DataflowProcessors<ParentInformation>; /** * This is the main function to produce the dataflow graph from a given request and normalized AST. * Note, that this requires knowledge of the active parser in case the dataflow analysis uncovers other files that have to be parsed and integrated into the analysis * (e.g., in the event of a `source` call). * For the actual, canonical fold entry point, see {@link processDataflowFor}. */ export declare function produceDataFlowGraph<OtherInfo>(parser: Parser<KnownParserType>, request: RParseRequests, completeAst: NormalizedAst<OtherInfo & ParentInformation>, config: FlowrConfigOptions): DataflowInformation;