@eagleoutice/flowr-dev
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
23 lines • 875 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.executeRecursionQuery = executeRecursionQuery;
const recursive_function_1 = require("../../../dataflow/fn/recursive-function");
const query_function_filter_1 = require("../../query-function-filter");
/**
* Execute recursion function inspection queries on the given analyzer.
*/
async function executeRecursionQuery({ analyzer }, queries) {
const start = Date.now();
const { cg, fns } = await query_function_filter_1.QueryFunctionFilter.inCallGraph(queries, analyzer);
const result = {};
for (const [id] of fns) {
result[id] = (0, recursive_function_1.isFunctionRecursive)(id, cg);
}
return {
'.meta': {
timing: Date.now() - start
},
recursive: result
};
}
//# sourceMappingURL=inspect-recursion-query-executor.js.map