@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
16 lines • 860 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.runSearch = runSearch;
const flowr_search_builder_1 = require("./flowr-search-builder");
const search_generators_1 = require("./search-executor/search-generators");
const search_transformer_1 = require("./search-executor/search-transformer");
/**
* Run a search with the given search query and data.
*/
function runSearch(search, data) {
const s = (0, flowr_search_builder_1.getFlowrSearch)(search);
return s.search.reduce((acc, transformer) => (0, search_transformer_1.getTransformer)(transformer.name)(data, acc, transformer.args),
/* support multiple arguments may be abstracted away in search frontend */
(0, search_generators_1.getGenerator)(s.generator.name)(data, s.generator.args)).getElements();
}
//# sourceMappingURL=flowr-search-executor.js.map