UNPKG

@abaplint/core

Version:
17 lines 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.InsertDatabase = void 0; const combi_1 = require("../combi"); const expressions_1 = require("../expressions"); const tokens_1 = require("../../1_lexer/tokens"); class InsertDatabase { getMatcher() { const sub = (0, combi_1.seq)((0, combi_1.tok)(tokens_1.WParenLeftW), expressions_1.Select, (0, combi_1.tok)(tokens_1.WParenRightW)); const f = (0, combi_1.seq)((0, combi_1.opt)(expressions_1.SQLClient), (0, combi_1.opt)(expressions_1.DatabaseConnection), "FROM", (0, combi_1.opt)("TABLE"), (0, combi_1.alt)(expressions_1.SQLSource, sub), (0, combi_1.opt)("ACCEPTING DUPLICATE KEYS")); const from = (0, combi_1.seq)(expressions_1.DatabaseTable, (0, combi_1.opt)((0, combi_1.alt)(f, expressions_1.SQLClient, expressions_1.DatabaseConnection))); const into = (0, combi_1.seq)("INTO", expressions_1.DatabaseTable, (0, combi_1.opt)(expressions_1.SQLClient), (0, combi_1.opt)(expressions_1.DatabaseConnection), "VALUES", expressions_1.SQLSource); return (0, combi_1.seq)("INSERT", (0, combi_1.alt)(from, into)); } } exports.InsertDatabase = InsertDatabase; //# sourceMappingURL=insert_database.js.map