@nodesecure/js-x-ray
Version:
JavaScript AST XRay analysis
20 lines • 571 B
JavaScript
export class PipelineRunner {
#pipelines;
constructor(pipelines) {
this.#pipelines = removeDuplicatedPipelines(pipelines);
}
reduce(initialBody) {
return this.#pipelines.reduce((body, pipeline) => pipeline.walk(body), initialBody);
}
}
function removeDuplicatedPipelines(pipelines) {
const seen = new Set();
return pipelines.filter((pipeline) => {
if (seen.has(pipeline.name)) {
return false;
}
seen.add(pipeline.name);
return true;
});
}
//# sourceMappingURL=Runner.class.js.map