@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
26 lines • 1.23 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.STATIC_SLICE = void 0;
const print_1 = require("../../../print/print");
const parse_1 = require("../../../../slicing/criterion/parse");
const static_slicer_1 = require("../../../../slicing/static/static-slicer");
const slice_direction_1 = require("../../../../util/slice-direction");
function processor(results, input) {
const direction = input.direction ?? slice_direction_1.SliceDirection.Backward;
const threshold = input.threshold ?? input.context?.config.solver.slicer?.threshold;
const n = results.normalize;
return (0, static_slicer_1.staticSlice)(input.context, results.dataflow, n, parse_1.SlicingCriteria.convertAll(input.criterion, n.idMap), direction, threshold);
}
exports.STATIC_SLICE = {
name: 'slice',
humanReadableName: 'static slice',
description: 'Calculate the actual static slice from the dataflow graph and the given slicing criteria',
processor,
executed: 1 /* PipelineStepStage.OncePerRequest */,
printer: {
[0 /* StepOutputFormat.Internal */]: print_1.internalPrinter
},
dependencies: ['dataflow'],
requiredInput: undefined
};
//# sourceMappingURL=00-slice.js.map