UNPKG

@abaplint/core

Version:
21 lines 1.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SQLIn = void 0; const combi_1 = require("../combi"); const _1 = require("."); const tokens_1 = require("../../1_lexer/tokens"); const version_1 = require("../../../version"); class SQLIn extends combi_1.Expression { getRunnable() { const val = new _1.SQLSource(); const short = new _1.SQLSourceNoSpace(); const listOld = (0, combi_1.seq)((0, combi_1.tok)(tokens_1.WParenLeft), (0, combi_1.alt)((0, combi_1.ver)(version_1.Version.v740sp05, short), val), (0, combi_1.starPrio)((0, combi_1.seq)(",", val)), (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenRight), (0, combi_1.tok)(tokens_1.ParenRightW), (0, combi_1.tok)(tokens_1.WParenRightW))); const listNew = (0, combi_1.seq)((0, combi_1.tok)(tokens_1.WParenLeftW), val, (0, combi_1.starPrio)((0, combi_1.seq)(",", (0, combi_1.altPrio)(short, val))), (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.WParenRight), (0, combi_1.tok)(tokens_1.WParenRightW))); const list = (0, combi_1.alt)(listOld, (0, combi_1.ver)(version_1.Version.v740sp02, listNew)); // version is a guess, https://github.com/abaplint/abaplint/issues/2530 const subSelect = (0, combi_1.seq)("(", _1.Select, ")"); const inn = (0, combi_1.seq)("IN", (0, combi_1.altPrio)(_1.SQLSource, list, subSelect)); return inn; } } exports.SQLIn = SQLIn; //# sourceMappingURL=sql_in.js.map