@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
17 lines (16 loc) • 1.36 kB
TypeScript
import type { FunctionArgument, OutgoingEdges } from './graph';
import type { GenericDiffConfiguration, GenericDifferenceInformation } from '../../util/diff';
import type { NodeId } from '../../r-bridge/lang-4.x/ast/model/processing/node-id';
import type { GraphDiffContext, NamedGraph } from '../../util/diff-graph';
import { GraphDifferenceReport } from '../../util/diff-graph';
/**
* Compare two dataflow graphs and return a report on the differences.
* If you simply want to check whether they equal, use {@link GraphDifferenceReport#isEqual|`<result>.isEqual()`}.
*
* @see {@link diffOfControlFlowGraphs} - for control flow graphs
*/
export declare function diffOfDataflowGraphs(left: NamedGraph, right: NamedGraph, config?: Partial<GenericDiffConfiguration>): GraphDifferenceReport;
export declare function equalFunctionArguments(fn: NodeId, a: false | readonly FunctionArgument[], b: false | readonly FunctionArgument[]): boolean;
export declare function diffFunctionArguments(fn: NodeId, a: false | readonly FunctionArgument[], b: false | readonly FunctionArgument[], ctx: GenericDifferenceInformation<GraphDifferenceReport>): void;
export declare function diffVertices(ctx: GraphDiffContext): void;
export declare function diffEdges(ctx: GraphDiffContext, id: NodeId, lEdges: OutgoingEdges | undefined, rEdges: OutgoingEdges | undefined): void;