@abaplint/cli 2.113.59 → 2.113.61

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/build/cli.js +54 -19
  2. package/package.json +2 -2
package/build/cli.js CHANGED
@@ -4949,7 +4949,7 @@ const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/co
4949
4949
  const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules/@abaplint/core/build/src/abap/1_lexer/tokens/index.js");
4950
4950
  class DefinitionName extends combi_1.Expression {
4951
4951
  getRunnable() {
4952
- const r = (0, combi_1.regex)(/^&|&?((\w*\/\w+\/)|(\w*\/\w+\/)?[\w\*$%]+)$/);
4952
+ const r = (0, combi_1.regex)(/^&|&?((\w*\/\w+\/)|(\w*\/\w+\/)?[\w\*$%\?]+)$/);
4953
4953
  return (0, combi_1.seq)(r, (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.Dash), (0, combi_1.optPrio)(r))), (0, combi_1.optPrio)((0, combi_1.tok)(tokens_1.DashW)));
4954
4954
  }
4955
4955
  }
@@ -6928,7 +6928,7 @@ exports.NamespaceSimpleName = void 0;
6928
6928
  const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
6929
6929
  class NamespaceSimpleName extends combi_1.Expression {
6930
6930
  getRunnable() {
6931
- return (0, combi_1.regex)(/^((\w*\/\w+\/)|(\w*\/\w+\/)?[\w\*$%]+)$/);
6931
+ return (0, combi_1.regex)(/^((\w*\/\w+\/)|(\w*\/\w+\/)?[\w\*$%#]+)$/);
6932
6932
  }
6933
6933
  }
6934
6934
  exports.NamespaceSimpleName = NamespaceSimpleName;
@@ -7539,7 +7539,8 @@ class SelectLoop extends combi_1.Expression {
7539
7539
  const into = (0, combi_1.altPrio)(sql_into_structure_1.SQLIntoStructure, _1.SQLIntoList);
7540
7540
  const perm = (0, combi_1.per)(_1.SQLFrom, where, sql_up_to_1.SQLUpTo, sql_order_by_1.SQLOrderBy, sql_having_1.SQLHaving, _1.SQLClient, bypass, _1.SQLGroupBy, _1.SQLForAllEntries, (0, combi_1.alt)(tab, into, packTab));
7541
7541
  const strict = (0, combi_1.seq)(_1.SQLFrom, (0, combi_1.ver)(version_1.Version.v750, sql_fields_loop_1.SQLFieldsLoop), (0, combi_1.optPrio)(_1.SQLForAllEntries), (0, combi_1.optPrio)((0, combi_1.seq)(where, (0, combi_1.optPrio)(sql_order_by_1.SQLOrderBy), into, (0, combi_1.optPrio)(sql_up_to_1.SQLUpTo))));
7542
- const ret = (0, combi_1.seq)("SELECT", (0, combi_1.altPrio)((0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), sql_field_list_loop_1.SQLFieldListLoop, perm), strict), (0, combi_1.optPrio)(sql_hints_1.SQLHints));
7542
+ const aggr = (0, combi_1.seq)(_1.SQLAggregation, into, _1.SQLFrom, where, _1.SQLGroupBy);
7543
+ const ret = (0, combi_1.seq)("SELECT", (0, combi_1.altPrio)((0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), sql_field_list_loop_1.SQLFieldListLoop, perm), strict, aggr), (0, combi_1.optPrio)(sql_hints_1.SQLHints));
7543
7544
  return ret;
7544
7545
  }
7545
7546
  }
@@ -10300,6 +10301,28 @@ exports.AtLineSelection = AtLineSelection;
10300
10301
 
10301
10302
  /***/ }),
10302
10303
 
10304
+ /***/ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_pf.js":
10305
+ /*!*************************************************************************************!*\
10306
+ !*** ./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_pf.js ***!
10307
+ \*************************************************************************************/
10308
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10309
+
10310
+ "use strict";
10311
+
10312
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
10313
+ exports.AtPF = void 0;
10314
+ const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
10315
+ const version_1 = __webpack_require__(/*! ../../../version */ "./node_modules/@abaplint/core/build/src/version.js");
10316
+ class AtPF {
10317
+ getMatcher() {
10318
+ return (0, combi_1.verNot)(version_1.Version.Cloud, (0, combi_1.seq)("AT", (0, combi_1.regex)(/^PF\d\d?$/i)));
10319
+ }
10320
+ }
10321
+ exports.AtPF = AtPF;
10322
+ //# sourceMappingURL=at_pf.js.map
10323
+
10324
+ /***/ }),
10325
+
10303
10326
  /***/ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_selection_screen.js":
10304
10327
  /*!***************************************************************************************************!*\
10305
10328
  !*** ./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_selection_screen.js ***!
@@ -11885,7 +11908,7 @@ class DeleteMemory {
11885
11908
  const memory = (0, combi_1.seq)("MEMORY ID", expressions_1.Source);
11886
11909
  const id = (0, combi_1.seq)("ID", expressions_1.Source);
11887
11910
  const client = (0, combi_1.seq)("CLIENT", expressions_1.Source);
11888
- const shared = (0, combi_1.seq)("SHARED MEMORY", expressions_1.Field, "(", expressions_1.Field, ")", (0, combi_1.optPrio)(client), id);
11911
+ const shared = (0, combi_1.seq)("SHARED", (0, combi_1.altPrio)("MEMORY", "BUFFER"), expressions_1.Field, "(", expressions_1.Field, ")", (0, combi_1.optPrio)(client), id);
11889
11912
  const ret = (0, combi_1.seq)("DELETE FROM", (0, combi_1.alt)(memory, shared));
11890
11913
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
11891
11914
  }
@@ -12884,7 +12907,7 @@ class Export {
12884
12907
  const database = (0, combi_1.seq)("DATABASE", cluster, (0, combi_1.per)(from, client, id, using));
12885
12908
  const target = (0, combi_1.alt)(buffer, memory, database, table, shared);
12886
12909
  const left = (0, combi_1.alt)(expressions_1.FieldSub, expressions_1.FieldSymbol);
12887
- const source = (0, combi_1.alt)((0, combi_1.plus)((0, combi_1.altPrio)(expressions_1.ParameterS, (0, combi_1.seq)(left, from), left)), expressions_1.Dynamic);
12910
+ const source = (0, combi_1.alt)((0, combi_1.plus)((0, combi_1.altPrio)(expressions_1.ParameterS, (0, combi_1.seq)(left, from), left)), expressions_1.Dynamic, expressions_1.Constant);
12888
12911
  const compression = (0, combi_1.seq)("COMPRESSION", (0, combi_1.alt)("ON", "OFF"));
12889
12912
  const hint = (0, combi_1.seq)("CODE PAGE HINT", expressions_1.Source);
12890
12913
  return (0, combi_1.seq)("EXPORT", source, "TO", target, (0, combi_1.opt)(compression), (0, combi_1.opt)(hint));
@@ -14076,6 +14099,7 @@ __exportStar(__webpack_require__(/*! ./export */ "./node_modules/@abaplint/core/
14076
14099
  __exportStar(__webpack_require__(/*! ./import */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/import.js"), exports);
14077
14100
  __exportStar(__webpack_require__(/*! ./at_first */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_first.js"), exports);
14078
14101
  __exportStar(__webpack_require__(/*! ./at_last */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_last.js"), exports);
14102
+ __exportStar(__webpack_require__(/*! ./at_pf */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at_pf.js"), exports);
14079
14103
  __exportStar(__webpack_require__(/*! ./at */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/at.js"), exports);
14080
14104
  __exportStar(__webpack_require__(/*! ./put */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/put.js"), exports);
14081
14105
  __exportStar(__webpack_require__(/*! ./endat */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/endat.js"), exports);
@@ -14212,7 +14236,7 @@ class Infotypes {
14212
14236
  getMatcher() {
14213
14237
  const occurs = (0, combi_1.seq)("OCCURS", expressions_1.Constant);
14214
14238
  const name = (0, combi_1.seq)("NAME", expressions_1.Field);
14215
- const ret = (0, combi_1.seq)("INFOTYPES", expressions_1.Constant, (0, combi_1.optPrio)(occurs), (0, combi_1.optPrio)(name));
14239
+ const ret = (0, combi_1.seq)("INFOTYPES", expressions_1.Constant, (0, combi_1.optPrio)(occurs), (0, combi_1.optPrio)(name), (0, combi_1.optPrio)("MODE N"));
14216
14240
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
14217
14241
  }
14218
14242
  }
@@ -14860,7 +14884,9 @@ const expressions_1 = __webpack_require__(/*! ../expressions */ "./node_modules/
14860
14884
  const version_1 = __webpack_require__(/*! ../../../version */ "./node_modules/@abaplint/core/build/src/version.js");
14861
14885
  class ModifyLine {
14862
14886
  getMatcher() {
14863
- const form = (0, combi_1.seq)((0, combi_1.alt)("INVERSE", "INPUT", "COLOR"), "=", expressions_1.Source);
14887
+ const onOff = (0, combi_1.alt)("ON", "OFF");
14888
+ const eq = (0, combi_1.seq)("=", expressions_1.Source);
14889
+ const form = (0, combi_1.seq)((0, combi_1.alt)("INVERSE", "INPUT", "COLOR"), (0, combi_1.alt)(eq, onOff));
14864
14890
  const from = (0, combi_1.seq)("FROM", expressions_1.Source);
14865
14891
  const value = (0, combi_1.seq)("FIELD VALUE", (0, combi_1.plus)((0, combi_1.seq)(expressions_1.Source, (0, combi_1.optPrio)(from))));
14866
14892
  const format = (0, combi_1.seq)("FIELD FORMAT", expressions_1.Source, (0, combi_1.opt)(form));
@@ -14868,8 +14894,7 @@ class ModifyLine {
14868
14894
  const index = (0, combi_1.seq)("INDEX", expressions_1.Source);
14869
14895
  const page = (0, combi_1.seq)("OF PAGE", expressions_1.Source);
14870
14896
  const ocp = (0, combi_1.str)("OF CURRENT PAGE");
14871
- const lineFormat = (0, combi_1.seq)("LINE FORMAT", (0, combi_1.per)("INPUT OFF", "INVERSE", "RESET", "INTENSIFIED", "COLOR COL_NORMAL"));
14872
- const onOff = (0, combi_1.alt)("ON", "OFF");
14897
+ const lineFormat = (0, combi_1.seq)("LINE FORMAT", (0, combi_1.per)("INPUT OFF", "INVERSE", "RESET", "INTENSIFIED", expressions_1.Color));
14873
14898
  const intensified = (0, combi_1.seq)("INTENSIFIED", onOff);
14874
14899
  const options = (0, combi_1.per)(index, value, format, page, lineFormat, lineValue, ocp, intensified, expressions_1.Color);
14875
14900
  const ret = (0, combi_1.seq)("MODIFY", (0, combi_1.altPrio)("CURRENT LINE", (0, combi_1.seq)("LINE", expressions_1.Source)), (0, combi_1.opt)(options));
@@ -15058,6 +15083,7 @@ class NewPage {
15058
15083
  const coverText = (0, combi_1.seq)("COVER TEXT", expressions_1.Source);
15059
15084
  const coverPage = (0, combi_1.seq)("SAP COVER PAGE", expressions_1.Source);
15060
15085
  const immediately = (0, combi_1.seq)("IMMEDIATELY", expressions_1.Source);
15086
+ const copies = (0, combi_1.seq)("COPIES", expressions_1.Source);
15061
15087
  const keep = (0, combi_1.seq)("KEEP IN SPOOL", expressions_1.Source);
15062
15088
  const layout = (0, combi_1.seq)("LAYOUT", expressions_1.Source);
15063
15089
  const listAuth = (0, combi_1.seq)("LIST AUTHORITY", expressions_1.Source);
@@ -15066,7 +15092,7 @@ class NewPage {
15066
15092
  const dataset = (0, combi_1.seq)("LIST DATASET", expressions_1.Source);
15067
15093
  const name = (0, combi_1.seq)("LIST NAME", expressions_1.Source);
15068
15094
  const newList = (0, combi_1.seq)("NEW LIST IDENTIFICATION", expressions_1.Source);
15069
- const ret = (0, combi_1.seq)("NEW-PAGE", (0, combi_1.opt)((0, combi_1.per)(print, (0, combi_1.alt)("NO-TITLE", "WITH-TITLE"), (0, combi_1.alt)("NO-HEADING", "WITH-HEADING"), "NO DIALOG", parameters, listAuth, immediately, dataset, coverPage, newList, keep, department, name, layout, destination, receiver, coverText, archive, "NEW-SECTION", lineCount, line)));
15095
+ const ret = (0, combi_1.seq)("NEW-PAGE", (0, combi_1.opt)((0, combi_1.per)(print, (0, combi_1.alt)("NO-TITLE", "WITH-TITLE"), (0, combi_1.alt)("NO-HEADING", "WITH-HEADING"), "NO DIALOG", parameters, listAuth, immediately, dataset, coverPage, newList, keep, department, name, layout, destination, receiver, copies, coverText, archive, "NEW-SECTION", lineCount, line)));
15070
15096
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
15071
15097
  }
15072
15098
  }
@@ -15262,7 +15288,7 @@ class Parameter {
15262
15288
  const length = (0, combi_1.seq)("LENGTH", expressions_1.Constant);
15263
15289
  const match = (0, combi_1.seq)("MATCHCODE OBJECT", expressions_1.Field);
15264
15290
  const decimals = (0, combi_1.seq)("DECIMALS", expressions_1.Source);
15265
- const forTable = (0, combi_1.seq)("FOR TABLE", expressions_1.DatabaseTable);
15291
+ const forTable = (0, combi_1.seq)("FOR TABLE", expressions_1.DatabaseTable, (0, combi_1.opt)("VALUE-REQUEST"));
15266
15292
  const perm = (0, combi_1.per)(type, def, "OBLIGATORY", match, cmd, length, decimals, radio, memory, modif, listbox, visible, forTable, "VALUE CHECK", "NO-DISPLAY", "AS CHECKBOX", "LOWER CASE");
15267
15293
  const ret = (0, combi_1.seq)(para, expressions_1.FieldSub, (0, combi_1.opt)(expressions_1.FieldLength), (0, combi_1.opt)(perm));
15268
15294
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
@@ -15349,7 +15375,10 @@ class PrintControl {
15349
15375
  const line = (0, combi_1.seq)("LINE", expressions_1.Source);
15350
15376
  const position = (0, combi_1.seq)("POSITION", expressions_1.Source);
15351
15377
  const size = (0, combi_1.seq)("SIZE", expressions_1.Source);
15352
- const ret = (0, combi_1.seq)("PRINT-CONTROL", (0, combi_1.per)(index, func, line, position, size));
15378
+ const cpi = (0, combi_1.seq)("CPI", expressions_1.Source);
15379
+ const lpi = (0, combi_1.seq)("LPI", expressions_1.Source);
15380
+ const font = (0, combi_1.seq)("FONT", expressions_1.Source);
15381
+ const ret = (0, combi_1.seq)("PRINT-CONTROL", (0, combi_1.per)(index, func, line, position, size, cpi, lpi, font));
15353
15382
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
15354
15383
  }
15355
15384
  }
@@ -16241,7 +16270,9 @@ class SelectionScreen {
16241
16270
  const endLine = (0, combi_1.str)("END OF LINE");
16242
16271
  const modif = (0, combi_1.seq)("MODIF ID", expressions_1.Modif);
16243
16272
  const visible = (0, combi_1.seq)("VISIBLE LENGTH", (0, combi_1.regex)(/^\d+$/));
16244
- const commentOpt = (0, combi_1.per)((0, combi_1.seq)("FOR FIELD", expressions_1.FieldSub), modif, visible);
16273
+ const ldbId = (0, combi_1.seq)("ID", (0, combi_1.regex)(/^\w+$/));
16274
+ const ldb = (0, combi_1.seq)("FOR FIELD", expressions_1.FieldSub, (0, combi_1.optPrio)(ldbId));
16275
+ const commentOpt = (0, combi_1.per)(ldb, modif, visible);
16245
16276
  const position = (0, combi_1.seq)((0, combi_1.opt)((0, combi_1.regex)(/^\/?[\d\w]+$/)), (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenLeft), (0, combi_1.tok)(tokens_1.WParenLeft)), expressions_1.Integer, (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenRightW), (0, combi_1.tok)(tokens_1.ParenRight)));
16246
16277
  const comment = (0, combi_1.seq)("COMMENT", position, (0, combi_1.opt)((0, combi_1.alt)(expressions_1.InlineField, expressions_1.TextElement)), (0, combi_1.opt)(commentOpt));
16247
16278
  const command = (0, combi_1.seq)("USER-COMMAND", (0, combi_1.alt)(expressions_1.Field, expressions_1.Constant));
@@ -16254,13 +16285,14 @@ class SelectionScreen {
16254
16285
  const posSymbols = (0, combi_1.altPrio)("POS_LOW", "POS_HIGH");
16255
16286
  // number between 1 and 83
16256
16287
  const posIntegers = (0, combi_1.regex)(/^(0?[1-9]|[1234567][0-9]|8[0-3])$/);
16257
- const pos = (0, combi_1.seq)("POSITION", (0, combi_1.altPrio)(posIntegers, posSymbols));
16288
+ const pos = (0, combi_1.seq)("POSITION", (0, combi_1.altPrio)(posIntegers, posSymbols), (0, combi_1.opt)((0, combi_1.seq)("FOR TABLE", expressions_1.Field)));
16258
16289
  const incl = (0, combi_1.seq)("INCLUDE BLOCKS", expressions_1.BlockName);
16259
16290
  const tabbed = (0, combi_1.seq)("BEGIN OF TABBED BLOCK", expressions_1.BlockName, "FOR", expressions_1.Integer, "LINES", (0, combi_1.optPrio)("NO INTERVALS"));
16260
16291
  const uline = (0, combi_1.seq)("ULINE", (0, combi_1.opt)(position));
16261
16292
  const param = (0, combi_1.seq)("INCLUDE PARAMETERS", expressions_1.Field);
16262
16293
  const iso = (0, combi_1.seq)("INCLUDE SELECT-OPTIONS", expressions_1.Field);
16263
- const ret = (0, combi_1.seq)("SELECTION-SCREEN", (0, combi_1.altPrio)(comment, func, skip, pos, incl, iso, push, tab, uline, beginBlock, tabbed, endBlock, beginLine, endLine, param, beginScreen, endScreen));
16294
+ const exclude = (0, combi_1.seq)("EXCLUDE", (0, combi_1.alt)("IDS", "PARAMETERS"), (0, combi_1.regex)(/^\w+$/));
16295
+ const ret = (0, combi_1.seq)("SELECTION-SCREEN", (0, combi_1.altPrio)(comment, func, skip, pos, incl, iso, push, tab, uline, beginBlock, tabbed, endBlock, beginLine, endLine, param, beginScreen, endScreen, exclude));
16264
16296
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
16265
16297
  }
16266
16298
  }
@@ -18074,7 +18106,7 @@ class Write {
18074
18106
  const as = (0, combi_1.seq)("AS", (0, combi_1.altPrio)("LINE", "ICON", "CHECKBOX", "SYMBOL"));
18075
18107
  const to = (0, combi_1.seq)("TO", expressions_1.Target);
18076
18108
  const options = (0, combi_1.per)(mask, to, (0, combi_1.seq)("EXPONENT", expressions_1.Source), "NO-GROUPING", "NO-ZERO", "CENTERED", (0, combi_1.seq)("INPUT", (0, combi_1.opt)(onOff)), "NO-GAP", "LEFT-JUSTIFIED", as, (0, combi_1.seq)("FRAMES", onOff), (0, combi_1.seq)("HOTSPOT", (0, combi_1.opt)(onOff)), "RIGHT-JUSTIFIED", (0, combi_1.seq)("TIME ZONE", expressions_1.Source), (0, combi_1.seq)("UNDER", expressions_1.Source), (0, combi_1.seq)("STYLE", expressions_1.Source), (0, combi_1.seq)("ROUND", expressions_1.Source), (0, combi_1.seq)("QUICKINFO", expressions_1.Source), "ENVIRONMENT TIME FORMAT", dateFormat, (0, combi_1.seq)("UNIT", expressions_1.Source), (0, combi_1.seq)("INTENSIFIED", (0, combi_1.opt)(onOff)), (0, combi_1.seq)("INDEX", expressions_1.Source), (0, combi_1.seq)("DECIMALS", expressions_1.Source), (0, combi_1.seq)("INVERSE", (0, combi_1.opt)(onOff)), expressions_1.Color, (0, combi_1.seq)("CURRENCY", expressions_1.Source), "NO-SIGN");
18077
- const ret = (0, combi_1.seq)("WRITE", (0, combi_1.alt)("AT /", (0, combi_1.seq)((0, combi_1.opt)(expressions_1.WriteOffsetLength), (0, combi_1.altPrio)(expressions_1.Source, expressions_1.Dynamic, "/"), (0, combi_1.opt)(options))));
18109
+ const ret = (0, combi_1.seq)("WRITE", (0, combi_1.alt)("AT /", (0, combi_1.seq)((0, combi_1.opt)(expressions_1.WriteOffsetLength), (0, combi_1.alt)(expressions_1.Source, expressions_1.Dynamic, "/"), (0, combi_1.opt)(options))));
18078
18110
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
18079
18111
  }
18080
18112
  }
@@ -18515,7 +18547,7 @@ const Structures = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/b
18515
18547
  const Statements = __webpack_require__(/*! ../../2_statements/statements */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/index.js");
18516
18548
  class Any {
18517
18549
  getMatcher() {
18518
- return (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.ClassLocalFriends), (0, _combi_1.sta)(Statements.ClassDeferred), (0, _combi_1.sta)(Statements.Report), (0, _combi_1.sta)(Statements.Program), (0, _combi_1.sta)(Statements.Parameter), (0, _combi_1.sta)(Statements.CheckSelectOptions), (0, _combi_1.sta)(Statements.Get), (0, _combi_1.sta)(Statements.Initialization), (0, _combi_1.sta)(Statements.InterfaceDeferred), (0, _combi_1.sta)(Statements.SelectionScreen), (0, _combi_1.sta)(Statements.SelectOption), (0, _combi_1.sta)(Statements.AtSelectionScreen), (0, _combi_1.sta)(Statements.AtLineSelection), (0, _combi_1.sta)(Statements.AtUserCommand), (0, _combi_1.sta)(Statements.StartOfSelection), (0, _combi_1.sta)(Statements.EndOfSelection), (0, _combi_1.sta)(Statements.LoadOfProgram), (0, _combi_1.sta)(Statements.TopOfPage), (0, _combi_1.sta)(Statements.EndOfPage), (0, _combi_1.sta)(Statements.Controls), (0, _combi_1.sta)(Statements.TypePools), (0, _combi_1.sta)(Statements.TypePool), (0, _combi_1.sta)(Statements.FunctionPool), (0, _combi_1.sub)(Structures.Normal), (0, _combi_1.sub)(Structures.Form), (0, _combi_1.sub)(Structures.Module), (0, _combi_1.sub)(Structures.FunctionModule), (0, _combi_1.sub)(Structures.Interface), (0, _combi_1.sub)(Structures.ClassDefinition), (0, _combi_1.sub)(Structures.ClassImplementation)));
18550
+ return (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.ClassLocalFriends), (0, _combi_1.sta)(Statements.ClassDeferred), (0, _combi_1.sta)(Statements.Report), (0, _combi_1.sta)(Statements.Program), (0, _combi_1.sta)(Statements.Parameter), (0, _combi_1.sta)(Statements.CheckSelectOptions), (0, _combi_1.sta)(Statements.Get), (0, _combi_1.sta)(Statements.Initialization), (0, _combi_1.sta)(Statements.InterfaceDeferred), (0, _combi_1.sta)(Statements.SelectionScreen), (0, _combi_1.sta)(Statements.SelectOption), (0, _combi_1.sta)(Statements.AtSelectionScreen), (0, _combi_1.sta)(Statements.AtLineSelection), (0, _combi_1.sta)(Statements.AtPF), (0, _combi_1.sta)(Statements.AtUserCommand), (0, _combi_1.sta)(Statements.StartOfSelection), (0, _combi_1.sta)(Statements.EndOfSelection), (0, _combi_1.sta)(Statements.LoadOfProgram), (0, _combi_1.sta)(Statements.TopOfPage), (0, _combi_1.sta)(Statements.EndOfPage), (0, _combi_1.sta)(Statements.Controls), (0, _combi_1.sta)(Statements.TypePools), (0, _combi_1.sta)(Statements.TypePool), (0, _combi_1.sta)(Statements.FunctionPool), (0, _combi_1.sub)(Structures.Normal), (0, _combi_1.sub)(Structures.Form), (0, _combi_1.sub)(Structures.Module), (0, _combi_1.sub)(Structures.FunctionModule), (0, _combi_1.sub)(Structures.Interface), (0, _combi_1.sub)(Structures.ClassDefinition), (0, _combi_1.sub)(Structures.ClassImplementation)));
18519
18551
  }
18520
18552
  }
18521
18553
  exports.Any = Any;
@@ -18629,9 +18661,10 @@ const Statements = __webpack_require__(/*! ../../2_statements/statements */ "./n
18629
18661
  const _combi_1 = __webpack_require__(/*! ./_combi */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/_combi.js");
18630
18662
  const when_1 = __webpack_require__(/*! ./when */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/when.js");
18631
18663
  const _statement_1 = __webpack_require__(/*! ../../2_statements/statements/_statement */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/_statement.js");
18664
+ const normal_1 = __webpack_require__(/*! ./normal */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/normal.js");
18632
18665
  class Case {
18633
18666
  getMatcher() {
18634
- return (0, _combi_1.beginEnd)((0, _combi_1.sta)(Statements.Case), (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sub)(when_1.When), (0, _combi_1.sta)(_statement_1.MacroCall), (0, _combi_1.sta)(Statements.Include))), (0, _combi_1.sta)(Statements.EndCase));
18667
+ return (0, _combi_1.beginEnd)((0, _combi_1.sta)(Statements.Case), (0, _combi_1.seq)((0, _combi_1.star)((0, _combi_1.sub)(normal_1.Normal)), (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sub)(when_1.When), (0, _combi_1.sta)(_statement_1.MacroCall), (0, _combi_1.sta)(Statements.Include)))), (0, _combi_1.sta)(Statements.EndCase));
18635
18668
  }
18636
18669
  }
18637
18670
  exports.Case = Case;
@@ -35417,6 +35450,7 @@ exports.SELECTION_EVENTS = [
35417
35450
  Statements.StartOfSelection,
35418
35451
  Statements.AtSelectionScreen,
35419
35452
  Statements.AtLineSelection,
35453
+ Statements.AtPF,
35420
35454
  Statements.AtUserCommand,
35421
35455
  Statements.EndOfSelection,
35422
35456
  Statements.Initialization,
@@ -52884,6 +52918,7 @@ class Indent {
52884
52918
  else if (type instanceof Statements.StartOfSelection
52885
52919
  || type instanceof Statements.AtSelectionScreen
52886
52920
  || type instanceof Statements.AtLineSelection
52921
+ || type instanceof Statements.AtPF
52887
52922
  || type instanceof Statements.Initialization
52888
52923
  || type instanceof Statements.AtUserCommand
52889
52924
  || type instanceof Statements.TopOfPage
@@ -53167,7 +53202,7 @@ class Registry {
53167
53202
  }
53168
53203
  static abaplintVersion() {
53169
53204
  // magic, see build script "version.sh"
53170
- return "2.113.59";
53205
+ return "2.113.61";
53171
53206
  }
53172
53207
  getDDICReferences() {
53173
53208
  return this.ddicReferences;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.113.59",
3
+ "version": "2.113.61",
4
4
  "description": "abaplint - Command Line Interface",
5
5
  "funding": "https://github.com/sponsors/larshp",
6
6
  "bin": {
@@ -38,7 +38,7 @@
38
38
  },
39
39
  "homepage": "https://abaplint.org",
40
40
  "devDependencies": {
41
- "@abaplint/core": "^2.113.59",
41
+ "@abaplint/core": "^2.113.61",
42
42
  "@types/chai": "^4.3.20",
43
43
  "@types/glob": "^8.1.0",
44
44
  "@types/minimist": "^1.2.5",