@abaplint/core 2.113.86 → 2.113.88

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.
@@ -7,10 +7,12 @@ const version_1 = require("../../../version");
7
7
  class Communication {
8
8
  getMatcher() {
9
9
  const length = (0, combi_1.seq)("LENGTH", expressions_1.Target);
10
+ const returncode = (0, combi_1.seq)("RETURNCODE", expressions_1.Source);
11
+ const buffer = (0, combi_1.seq)("BUFFER", expressions_1.Target);
10
12
  const init = (0, combi_1.seq)("INIT ID", expressions_1.Source, "DESTINATION", expressions_1.Target);
11
- const allocate = (0, combi_1.seq)("ALLOCATE ID", expressions_1.Source);
12
- const send = (0, combi_1.seq)("SEND ID", expressions_1.Source, "BUFFER", expressions_1.Target, (0, combi_1.opt)(length));
13
- const deallocate = (0, combi_1.seq)("DEALLOCATE ID", expressions_1.Source);
13
+ const allocate = (0, combi_1.seq)("ALLOCATE ID", expressions_1.Source, (0, combi_1.opt)(returncode));
14
+ const send = (0, combi_1.seq)("SEND ID", expressions_1.Source, (0, combi_1.opt)((0, combi_1.per)(buffer, length)), (0, combi_1.opt)(returncode));
15
+ const deallocate = (0, combi_1.seq)("DEALLOCATE ID", expressions_1.Source, (0, combi_1.opt)(returncode));
14
16
  const accept = (0, combi_1.seq)("ACCEPT ID", expressions_1.Source);
15
17
  const receive = (0, combi_1.seq)("RECEIVE ID", expressions_1.Source, "BUFFER", expressions_1.Source, (0, combi_1.opt)(length), "DATAINFO", expressions_1.Target, "STATUSINFO", expressions_1.Target, "RECEIVED", expressions_1.Target);
16
18
  const ret = (0, combi_1.seq)("COMMUNICATION", (0, combi_1.alt)(init, allocate, send, deallocate, receive, accept));
@@ -9,7 +9,7 @@ class DeleteMemory {
9
9
  const memory = (0, combi_1.seq)("MEMORY ID", expressions_1.Source);
10
10
  const id = (0, combi_1.seq)("ID", expressions_1.Source);
11
11
  const client = (0, combi_1.seq)("CLIENT", expressions_1.Source);
12
- 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);
12
+ const shared = (0, combi_1.seq)("SHARED", (0, combi_1.altPrio)("MEMORY", "BUFFER"), expressions_1.Field, "(", (0, combi_1.regex)(/^\w+$/), ")", (0, combi_1.optPrio)(client), id);
13
13
  const ret = (0, combi_1.seq)("DELETE FROM", (0, combi_1.alt)(memory, shared));
14
14
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
15
15
  }
@@ -13,9 +13,9 @@ class ModifyInternal {
13
13
  const using = (0, combi_1.seq)("USING KEY", expressions_1.SimpleName);
14
14
  const additions = (0, combi_1.per)(where, assigning, using);
15
15
  const target = (0, combi_1.alt)(expressions_1.Target, expressions_1.Dynamic);
16
- const options = (0, combi_1.alt)((0, combi_1.per)(index, transporting), (0, combi_1.seq)(from, (0, combi_1.opt)((0, combi_1.per)(index, transporting))), (0, combi_1.seq)((0, combi_1.per)(index, transporting), from, (0, combi_1.opt)((0, combi_1.per)(index, transporting))));
16
+ const options = (0, combi_1.alt)((0, combi_1.per)(index, transporting), (0, combi_1.seq)(from, (0, combi_1.opt)((0, combi_1.per)(index, transporting, using))), (0, combi_1.seq)((0, combi_1.per)(index, transporting), from, (0, combi_1.opt)((0, combi_1.per)(index, transporting))));
17
17
  const long = (0, combi_1.seq)("MODIFY", (0, combi_1.opt)("TABLE"), target, (0, combi_1.opt)(options), (0, combi_1.opt)(additions));
18
- const simple = (0, combi_1.seq)("MODIFY TABLE", target, from, (0, combi_1.opt)(using));
18
+ const simple = (0, combi_1.seq)("MODIFY TABLE", target, (0, combi_1.per)(from, using));
19
19
  return (0, combi_1.alt)(long, simple);
20
20
  }
21
21
  }
@@ -12,7 +12,7 @@ class Parameter {
12
12
  const type = (0, combi_1.seq)((0, combi_1.altPrio)("TYPE", "LIKE"), (0, combi_1.altPrio)(expressions_1.TypeName, expressions_1.Dynamic));
13
13
  const memory = (0, combi_1.seq)("MEMORY ID", expressions_1.SimpleSource1);
14
14
  const listbox = (0, combi_1.str)("AS LISTBOX");
15
- const cmd = (0, combi_1.seq)("USER-COMMAND", (0, combi_1.regex)(/^\w+$/));
15
+ const cmd = (0, combi_1.seq)("USER-COMMAND", (0, combi_1.regex)(/^[\w\?\/]+$/));
16
16
  const modif = (0, combi_1.seq)("MODIF ID", expressions_1.Modif);
17
17
  const visible = (0, combi_1.seq)("VISIBLE LENGTH", expressions_1.Constant);
18
18
  const length = (0, combi_1.seq)("LENGTH", expressions_1.Constant);
@@ -41,7 +41,7 @@ class SelectionScreen {
41
41
  const exclude = (0, combi_1.seq)("EXCLUDE", (0, combi_1.alt)("IDS", "PARAMETERS"), (0, combi_1.regex)(/^\w+$/));
42
42
  const beginVersion = (0, combi_1.seq)("BEGIN OF VERSION", (0, combi_1.regex)(/^\w+$/), expressions_1.TextElement);
43
43
  const endVersion = (0, combi_1.seq)("END OF VERSION", (0, combi_1.regex)(/^\w+$/));
44
- 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, beginVersion, endVersion));
44
+ 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, beginVersion, endVersion, def));
45
45
  return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
46
46
  }
47
47
  }
@@ -12,7 +12,7 @@ class SelectOption {
12
12
  const option = (0, combi_1.seq)("OPTION", (0, combi_1.alt)("CP", expressions_1.Field));
13
13
  const sign = (0, combi_1.seq)("SIGN", expressions_1.Field);
14
14
  const memory = (0, combi_1.seq)("MEMORY ID", expressions_1.SimpleSource1);
15
- const match = (0, combi_1.seq)("MATCHCODE OBJECT", expressions_1.Field);
15
+ const match = (0, combi_1.seq)("MATCHCODE OBJECT", expressions_1.SimpleFieldChain);
16
16
  const modif = (0, combi_1.seq)("MODIF ID", expressions_1.Modif);
17
17
  const visible = (0, combi_1.seq)("VISIBLE LENGTH", expressions_1.Source);
18
18
  const options = (0, combi_1.per)(def, option, sign, memory, match, visible, modif, "NO DATABASE SELECTION", "LOWER CASE", "NO-EXTENSION", "NO INTERVALS", "NO-DISPLAY", "OBLIGATORY");
@@ -7,7 +7,7 @@ const version_1 = require("../../../version");
7
7
  class Submit {
8
8
  getMatcher() {
9
9
  const sign = (0, combi_1.seq)("SIGN", expressions_1.Source);
10
- const eq = (0, combi_1.alt)("=", "EQ", "IN", "NE", "CP", "GE", "LE", "INCL");
10
+ const eq = (0, combi_1.alt)("=", "EQ", "IN", "NE", "CP", "GE", "LE", "INCL", "GT", "LT");
11
11
  const compare = (0, combi_1.seq)(eq, expressions_1.Source);
12
12
  const between = (0, combi_1.seq)("BETWEEN", expressions_1.Source, "AND", expressions_1.Source);
13
13
  const selectionTable = (0, combi_1.seq)("WITH SELECTION-TABLE", expressions_1.Source);
@@ -308,6 +308,9 @@ class TypeUtils {
308
308
  }
309
309
  return true;
310
310
  }
311
+ else if (target instanceof basic_1.SimpleType) {
312
+ return this.isCharLikeStrict(source);
313
+ }
311
314
  else if (target instanceof basic_1.CLikeType) {
312
315
  return this.isCharLikeStrict(source);
313
316
  }
@@ -126,9 +126,10 @@ class Source {
126
126
  if (foundType === undefined && s) {
127
127
  return new basic_1.DataReference(s);
128
128
  }
129
- else {
130
- return foundType;
129
+ else if (foundType) {
130
+ return new basic_1.DataReference(foundType);
131
131
  }
132
+ return undefined;
132
133
  }
133
134
  case "FILTER":
134
135
  {
@@ -6,13 +6,14 @@ const combi_1 = require("../../abap/2_statements/combi");
6
6
  const cds_integer_1 = require("./cds_integer");
7
7
  class CDSCondition extends combi_1.Expression {
8
8
  getRunnable() {
9
- const name = (0, combi_1.seq)(_1.CDSName, (0, combi_1.optPrio)((0, combi_1.seq)(".", (0, combi_1.alt)(_1.CDSName, _1.CDSString))));
10
- const left = (0, combi_1.alt)(name, _1.CDSFunction, _1.CDSString);
11
- const compare = (0, combi_1.seq)(left, (0, combi_1.alt)("=", (0, combi_1.seq)("!", "="), (0, combi_1.seq)("<", ">"), "<", ">", (0, combi_1.seq)(">", "="), (0, combi_1.seq)("<", "="), "LIKE", "NOT LIKE"), (0, combi_1.alt)(left, cds_integer_1.CDSInteger, _1.CDSFunction, _1.CDSString));
9
+ const name = (0, combi_1.seq)(_1.CDSName, (0, combi_1.optPrio)((0, combi_1.seq)(".", (0, combi_1.altPrio)(_1.CDSString, _1.CDSName))));
10
+ const left = (0, combi_1.altPrio)(_1.CDSString, _1.CDSFunction, name);
11
+ const operators = (0, combi_1.altPrio)("=", (0, combi_1.seq)("!", "="), (0, combi_1.seq)("<", ">"), (0, combi_1.seq)(">", "="), (0, combi_1.seq)("<", "="), "<", ">", "LIKE", "NOT LIKE");
12
+ const compare = (0, combi_1.seq)(left, operators, (0, combi_1.alt)(left, cds_integer_1.CDSInteger));
12
13
  const is = (0, combi_1.seq)(left, "IS", (0, combi_1.optPrio)("NOT"), (0, combi_1.altPrio)("INITIAL", "NULL"));
13
- const condition = (0, combi_1.seq)((0, combi_1.optPrio)("NOT"), (0, combi_1.alt)(compare, is));
14
+ const condition = (0, combi_1.seq)((0, combi_1.optPrio)("NOT"), (0, combi_1.altPrio)(compare, is));
14
15
  const paren = (0, combi_1.seq)("(", CDSCondition, ")");
15
- return (0, combi_1.seq)((0, combi_1.alt)(condition, paren), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.altPrio)("AND", "OR"), (0, combi_1.altPrio)(condition, paren))));
16
+ return (0, combi_1.seq)((0, combi_1.altPrio)(condition, paren), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.altPrio)("AND", "OR"), (0, combi_1.altPrio)(condition, paren))));
16
17
  }
17
18
  }
18
19
  exports.CDSCondition = CDSCondition;
@@ -6,7 +6,7 @@ const combi_1 = require("../../abap/2_statements/combi");
6
6
  const cds_condition_1 = require("./cds_condition");
7
7
  class CDSJoin extends combi_1.Expression {
8
8
  getRunnable() {
9
- return (0, combi_1.seq)((0, combi_1.opt)((0, combi_1.alt)("INNER", "LEFT OUTER", "LEFT OUTER TO ONE")), "JOIN", _1.CDSSource, "ON", cds_condition_1.CDSCondition);
9
+ return (0, combi_1.seq)((0, combi_1.optPrio)((0, combi_1.altPrio)("LEFT OUTER TO ONE", "LEFT OUTER", "INNER")), "JOIN", _1.CDSSource, "ON", cds_condition_1.CDSCondition);
10
10
  }
11
11
  }
12
12
  exports.CDSJoin = CDSJoin;
@@ -5,7 +5,7 @@ const _1 = require(".");
5
5
  const combi_1 = require("../../abap/2_statements/combi");
6
6
  class CDSSource extends combi_1.Expression {
7
7
  getRunnable() {
8
- return (0, combi_1.seq)(_1.CDSName, (0, combi_1.opt)(_1.CDSParametersSelect), (0, combi_1.opt)(_1.CDSAs));
8
+ return (0, combi_1.seq)(_1.CDSName, (0, combi_1.optPrio)(_1.CDSParametersSelect), (0, combi_1.optPrio)(_1.CDSAs));
9
9
  }
10
10
  }
11
11
  exports.CDSSource = CDSSource;
@@ -67,7 +67,7 @@ class Registry {
67
67
  }
68
68
  static abaplintVersion() {
69
69
  // magic, see build script "version.sh"
70
- return "2.113.86";
70
+ return "2.113.88";
71
71
  }
72
72
  getDDICReferences() {
73
73
  return this.ddicReferences;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/core",
3
- "version": "2.113.86",
3
+ "version": "2.113.88",
4
4
  "description": "abaplint - Core API",
5
5
  "main": "build/src/index.js",
6
6
  "typings": "build/abaplint.d.ts",
@@ -50,17 +50,17 @@
50
50
  },
51
51
  "homepage": "https://abaplint.org",
52
52
  "devDependencies": {
53
- "@microsoft/api-extractor": "^7.48.1",
53
+ "@microsoft/api-extractor": "^7.49.1",
54
54
  "@types/chai": "^4.3.20",
55
55
  "@types/mocha": "^10.0.10",
56
56
  "@types/node": "^22.10.5",
57
57
  "chai": "^4.5.0",
58
- "eslint": "^9.17.0",
58
+ "eslint": "^9.18.0",
59
59
  "mocha": "^11.0.1",
60
60
  "c8": "^10.1.3",
61
61
  "source-map-support": "^0.5.21",
62
62
  "ts-json-schema-generator": "^2.3.0",
63
- "typescript": "^5.7.2"
63
+ "typescript": "^5.7.3"
64
64
  },
65
65
  "dependencies": {
66
66
  "fast-xml-parser": "^4.5.1",