UNPKG

@abaplint/core

Version:
17 lines 1.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MethodImplementation = void 0; const combi_1 = require("../combi"); const expressions_1 = require("../expressions"); class MethodImplementation { getMatcher() { const name = (0, combi_1.regex)(/[\w~]+/); const kernel = (0, combi_1.seq)("KERNEL MODULE", (0, combi_1.plus)(name), (0, combi_1.optPrio)((0, combi_1.altPrio)("FAIL", "IGNORE"))); const using = (0, combi_1.seq)("USING", (0, combi_1.plus)(expressions_1.SimpleFieldChain)); const database = (0, combi_1.seq)("DATABASE", (0, combi_1.alt)("PROCEDURE", "FUNCTION", "GRAPH WORKSPACE"), "FOR HDB", expressions_1.Language, (0, combi_1.opt)("OPTIONS READ-ONLY"), (0, combi_1.opt)(using)); const by = (0, combi_1.seq)("BY", (0, combi_1.alt)(kernel, database)); return (0, combi_1.seq)("METHOD", expressions_1.MethodName, (0, combi_1.optPrio)(by)); } } exports.MethodImplementation = MethodImplementation; //# sourceMappingURL=method_implementation.js.map