@abaplint/cli 2.113.63 → 2.113.64

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 +13 -9
  2. package/package.json +2 -2
package/build/cli.js CHANGED
@@ -5279,7 +5279,7 @@ const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules
5279
5279
  const table_body_1 = __webpack_require__(/*! ./table_body */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/table_body.js");
5280
5280
  class FieldSub extends combi_1.Expression {
5281
5281
  getRunnable() {
5282
- const ret = (0, combi_1.seq)((0, combi_1.regex)(/^\*?!?(\/\w+\/)?[a-zA-Z_%$\?][\w%$\$\*]*$/), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.Dash), (0, combi_1.regex)(/^[\w%$\$\*]+$/))), (0, combi_1.opt)(table_body_1.TableBody));
5282
+ const ret = (0, combi_1.seq)((0, combi_1.regex)(/^\*?!?&?(\/\w+\/)?[a-zA-Z_%$\?][\w%$\$\*]*$/), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.Dash), (0, combi_1.regex)(/^[\w%$\$\*]+$/))), (0, combi_1.opt)(table_body_1.TableBody));
5283
5283
  return ret;
5284
5284
  }
5285
5285
  }
@@ -6417,7 +6417,7 @@ const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/co
6417
6417
  class MessageClass extends combi_1.Expression {
6418
6418
  getRunnable() {
6419
6419
  // "&1" can be used for almost anything(field names, method names etc.) in macros
6420
- return (0, combi_1.seq)((0, combi_1.regex)(/^>?[\w\/]+#?@?\/?!?&?>?\$?\??<?$/), (0, combi_1.starPrio)((0, combi_1.tok)(tokens_1.PlusW)), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.Dash), (0, combi_1.optPrio)((0, combi_1.regex)(/^\w+$/)))), (0, combi_1.optPrio)((0, combi_1.tok)(tokens_1.DashW)));
6420
+ return (0, combi_1.seq)((0, combi_1.regex)(/^>?[\w\/]+#?@?\/?!?&?>?\$?\??<?$/), (0, combi_1.starPrio)((0, combi_1.tok)(tokens_1.Plus)), (0, combi_1.starPrio)((0, combi_1.tok)(tokens_1.PlusW)), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.Dash), (0, combi_1.optPrio)((0, combi_1.regex)(/^\w+$/)))), (0, combi_1.optPrio)((0, combi_1.tok)(tokens_1.DashW)));
6421
6421
  }
6422
6422
  }
6423
6423
  exports.MessageClass = MessageClass;
@@ -10042,7 +10042,8 @@ const expressions_1 = __webpack_require__(/*! ../expressions */ "./node_modules/
10042
10042
  class Add {
10043
10043
  getMatcher() {
10044
10044
  const to = (0, combi_1.seq)("TO", expressions_1.Target);
10045
- const giving = (0, combi_1.seq)("GIVING", expressions_1.FieldSub);
10045
+ const accordingTo = (0, combi_1.seq)("ACCORDING TO", expressions_1.FieldSub);
10046
+ const giving = (0, combi_1.seq)("GIVING", expressions_1.FieldSub, (0, combi_1.opt)(accordingTo));
10046
10047
  const then = (0, combi_1.seq)("THEN", expressions_1.FieldSub, "UNTIL", expressions_1.FieldSub, (0, combi_1.alt)(giving, to));
10047
10048
  const ret = (0, combi_1.seq)("ADD", expressions_1.Source, (0, combi_1.altPrio)(to, then));
10048
10049
  return ret;
@@ -10572,7 +10573,7 @@ class CallDialog {
10572
10573
  const exporting = (0, combi_1.seq)("EXPORTING", (0, combi_1.plus)(from));
10573
10574
  const to = (0, combi_1.seq)(expressions_1.Field, (0, combi_1.optPrio)((0, combi_1.seq)("TO", expressions_1.Field)));
10574
10575
  const importing = (0, combi_1.seq)("IMPORTING", (0, combi_1.plus)(to));
10575
- const ret = (0, combi_1.seq)("CALL DIALOG", expressions_1.Constant, (0, combi_1.opt)(exporting), (0, combi_1.opt)(importing));
10576
+ const ret = (0, combi_1.seq)("CALL DIALOG", (0, combi_1.alt)(expressions_1.Constant, expressions_1.FieldSub), (0, combi_1.opt)(exporting), (0, combi_1.opt)(importing));
10576
10577
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
10577
10578
  }
10578
10579
  }
@@ -10882,7 +10883,7 @@ const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/co
10882
10883
  const expressions_1 = __webpack_require__(/*! ../expressions */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
10883
10884
  class Check {
10884
10885
  getMatcher() {
10885
- const ret = (0, combi_1.seq)("CHECK", (0, combi_1.altPrio)(expressions_1.Cond, expressions_1.Field));
10886
+ const ret = (0, combi_1.seq)("CHECK", (0, combi_1.altPrio)(expressions_1.Cond, expressions_1.FieldSub));
10886
10887
  return ret;
10887
10888
  }
10888
10889
  }
@@ -14976,7 +14977,7 @@ const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules
14976
14977
  class Move {
14977
14978
  getMatcher() {
14978
14979
  const mov = (0, combi_1.verNot)(version_1.Version.Cloud, "MOVE");
14979
- const move = (0, combi_1.seq)(mov, (0, combi_1.altPrio)((0, combi_1.seq)("EXACT", expressions_1.Source, "TO", expressions_1.Target), (0, combi_1.seq)(expressions_1.Source, (0, combi_1.altPrio)("?TO", "TO"), expressions_1.Target)), (0, combi_1.opt)((0, combi_1.seq)("PERCENTAGE", expressions_1.Source)));
14980
+ const move = (0, combi_1.seq)(mov, (0, combi_1.altPrio)((0, combi_1.seq)("EXACT", expressions_1.Source, "TO", expressions_1.Target), (0, combi_1.seq)(expressions_1.Source, (0, combi_1.altPrio)("?TO", "TO"), expressions_1.Target)), (0, combi_1.opt)((0, combi_1.seq)("PERCENTAGE", expressions_1.Source, (0, combi_1.opt)((0, combi_1.alt)("LEFT", "RIGHT")))));
14980
14981
  const calcAssign = (0, combi_1.ver)(version_1.Version.v754, (0, combi_1.alt)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.WPlus), "="), (0, combi_1.seq)((0, combi_1.tok)(tokens_1.WDash), "="), "/=", "*=", "&&="));
14981
14982
  const chained = (0, combi_1.seq)("=", (0, combi_1.star)((0, combi_1.seq)(expressions_1.Target, "=")));
14982
14983
  const equals = (0, combi_1.altPrio)((0, combi_1.altPrio)(chained, "?="), calcAssign);
@@ -15097,7 +15098,7 @@ class NewPage {
15097
15098
  const dataset = (0, combi_1.seq)("LIST DATASET", expressions_1.Source);
15098
15099
  const name = (0, combi_1.seq)("LIST NAME", expressions_1.Source);
15099
15100
  const newList = (0, combi_1.seq)("NEW LIST IDENTIFICATION", expressions_1.Source);
15100
- 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)));
15101
+ 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", "NO-TOPOFPAGE", parameters, listAuth, immediately, dataset, coverPage, newList, keep, department, name, layout, destination, receiver, copies, coverText, archive, "NEW-SECTION", lineCount, line)));
15101
15102
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
15102
15103
  }
15103
15104
  }
@@ -15295,7 +15296,7 @@ class Parameter {
15295
15296
  const decimals = (0, combi_1.seq)("DECIMALS", expressions_1.Source);
15296
15297
  const forTable = (0, combi_1.seq)("FOR TABLE", expressions_1.DatabaseTable, (0, combi_1.opt)("VALUE-REQUEST"));
15297
15298
  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");
15298
- const ret = (0, combi_1.seq)(para, expressions_1.FieldSub, (0, combi_1.opt)(expressions_1.FieldLength), (0, combi_1.opt)(perm));
15299
+ const ret = (0, combi_1.seq)(para, expressions_1.FieldSub, (0, combi_1.opt)(expressions_1.ConstantFieldLength), (0, combi_1.opt)(perm));
15299
15300
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
15300
15301
  }
15301
15302
  }
@@ -34296,6 +34297,9 @@ class Data {
34296
34297
  if (found instanceof Basic.UnknownType) {
34297
34298
  return new _typed_identifier_1.TypedIdentifier(name, input.filename, new Basic.UnknownType("unknown type, " + typeName));
34298
34299
  }
34300
+ if (found instanceof Basic.TableType && found.isWithHeader()) {
34301
+ found = found.getRowType();
34302
+ }
34299
34303
  if (!(found instanceof Basic.StructureType)) {
34300
34304
  const message = "not structured, " + typeName;
34301
34305
  input.issues.push((0, _syntax_input_1.syntaxIssue)(input, typeToken, message));
@@ -53212,7 +53216,7 @@ class Registry {
53212
53216
  }
53213
53217
  static abaplintVersion() {
53214
53218
  // magic, see build script "version.sh"
53215
- return "2.113.63";
53219
+ return "2.113.64";
53216
53220
  }
53217
53221
  getDDICReferences() {
53218
53222
  return this.ddicReferences;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.113.63",
3
+ "version": "2.113.64",
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.63",
41
+ "@abaplint/core": "^2.113.64",
42
42
  "@types/chai": "^4.3.20",
43
43
  "@types/glob": "^8.1.0",
44
44
  "@types/minimist": "^1.2.5",