@abaplint/transpiler
Version:
27 lines • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CondSubTranspiler = void 0;
const core_1 = require("@abaplint/core");
const chunk_1 = require("../chunk");
class CondSubTranspiler {
transpile(node, traversal) {
const ret = new chunk_1.Chunk();
for (const c of node.getChildren()) {
if (c.get() instanceof core_1.Expressions.Cond) {
ret.appendChunk(traversal.traverse(c));
}
else if (c instanceof core_1.Nodes.TokenNode && c.getFirstToken().getStr().toUpperCase() === "NOT") {
ret.append("!", c, traversal);
}
else if (c instanceof core_1.Nodes.TokenNode && c.getFirstToken().getStr().trim() === "(") {
ret.append("(", c, traversal);
}
else if (c instanceof core_1.Nodes.TokenNode && c.getFirstToken().getStr().trim() === ")") {
ret.append(")", c, traversal);
}
}
return ret;
}
}
exports.CondSubTranspiler = CondSubTranspiler;
//# sourceMappingURL=cond_sub.js.map