UNPKG

@abaplint/core

Version:
16 lines 786 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CDSCardinality = void 0; const combi_1 = require("../../abap/2_statements/combi"); class CDSCardinality extends combi_1.Expression { getRunnable() { // Numeric cardinality: any non-negative integer or * (e.g. [0..1], [1..2], [0..*]) const num = (0, combi_1.altPrio)((0, combi_1.regex)(/^\d+$/), "*"); const numeric = (0, combi_1.seq)("[", num, (0, combi_1.optPrio)((0, combi_1.seq)(".", ".", num)), "]"); const textNum = (0, combi_1.altPrio)("ONE", "MANY"); const text = (0, combi_1.seq)(textNum, "TO", textNum); return (0, combi_1.altPrio)(numeric, text); } } exports.CDSCardinality = CDSCardinality; //# sourceMappingURL=cds_cardinality.js.map