@abaplint/core
Version:
abaplint - Core API
18 lines • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TableExpression = void 0;
const combi_1 = require("../combi");
const tokens_1 = require("../../1_lexer/tokens");
const _1 = require(".");
const version_1 = require("../../../version");
class TableExpression extends combi_1.Expression {
getRunnable() {
const fields = (0, combi_1.plus)((0, combi_1.seq)((0, combi_1.altPrio)(_1.ComponentChainSimple, _1.Dynamic), "=", _1.Source));
const key = (0, combi_1.seq)("KEY", _1.SimpleName);
const index = (0, combi_1.seq)("INDEX", _1.Source);
const ret = (0, combi_1.seq)((0, combi_1.tok)(tokens_1.BracketLeftW), (0, combi_1.alt)(_1.Source, (0, combi_1.seq)((0, combi_1.optPrio)(key), (0, combi_1.opt)("COMPONENTS"), (0, combi_1.altPrio)(fields, index))), (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.WBracketRight), (0, combi_1.tok)(tokens_1.WBracketRightW)));
return (0, combi_1.ver)(version_1.Version.v740sp02, ret, version_1.Version.OpenABAP);
}
}
exports.TableExpression = TableExpression;
//# sourceMappingURL=table_expression.js.map