Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | 1x 1x 1x 1x 1x 1x 1x 1x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 1x 1x | import {IStatement} from "./_statement"; import {seq, opt, optPrio, alt, plus, altPrio, regex as reg} from "../combi"; import {MethodName, Language, SimpleFieldChain} from "../expressions"; import {IStatementRunnable} from "../statement_runnable"; export class MethodImplementation implements IStatement { public getMatcher(): IStatementRunnable { const name = reg(/[\w~]+/); const kernel = seq("KERNEL MODULE", plus(name), optPrio(altPrio("FAIL", "IGNORE"))); const using = seq("USING", plus(SimpleFieldChain)); const database = seq("DATABASE", alt("PROCEDURE", "FUNCTION", "GRAPH WORKSPACE"), "FOR HDB", Language, opt("OPTIONS READ-ONLY"), opt(using)); const by = seq("BY", alt(kernel, database)); return seq("METHOD", MethodName, optPrio(by)); } } |