UNPKG

@eagleoutice/flowr

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

29 lines 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.normalizedAstToJson = normalizedAstToJson; exports.normalizedAstToQuads = normalizedAstToQuads; exports.printNormalizedAstToMermaid = printNormalizedAstToMermaid; exports.printNormalizedAstToMermaidUrl = printNormalizedAstToMermaidUrl; const json_1 = require("../../util/json"); const quads_1 = require("../../util/quads"); const ast_1 = require("../../util/mermaid/ast"); /** Should work with larger things as well */ function normalizedAstToJson(ast) { // we never serialize the idmap, as it just duplicates the ast, additionally we now miss the full-lexeme to further safe memory return JSON.stringify({ ...ast.ast, idMap: undefined }, (k, v) => { if (k === 'fullLexeme') { return undefined; } return (0, json_1.jsonReplacer)(k, v); }); } function normalizedAstToQuads(ast, config) { return (0, quads_1.serialize2quads)(ast.ast, config); } function printNormalizedAstToMermaid(ast) { return (0, ast_1.normalizedAstToMermaid)(ast.ast); } function printNormalizedAstToMermaidUrl(ast) { return (0, ast_1.normalizedAstToMermaidUrl)(ast.ast); } //# sourceMappingURL=normalize-printer.js.map