@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
26 lines • 977 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.executeConfigQuery = executeConfigQuery;
const log_1 = require("../../../util/log");
const assert_1 = require("../../../util/assert");
const objects_1 = require("../../../util/objects");
/**
* Executes the given configuration queries using the provided analyzer.
*/
function executeConfigQuery({ analyzer }, queries) {
if (queries.length !== 1) {
log_1.log.warn('Config query usually expects only up to one query, but got', queries.length);
}
const updates = queries.map(q => q.update).filter(assert_1.isNotUndefined);
for (const update of updates) {
(0, objects_1.deepMergeObjectInPlace)(analyzer.flowrConfig, update);
}
return Promise.resolve({
'.meta': {
/* there is no sense in measuring a get */
timing: 0
},
config: analyzer.flowrConfig
});
}
//# sourceMappingURL=config-query-executor.js.map