@abaplint/cli 2.102.25 → 2.102.27

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 +20 -9
  2. package/package.json +3 -3
package/build/cli.js CHANGED
@@ -7306,7 +7306,7 @@ exports.SQLCompareOperator = void 0;
7306
7306
  const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
7307
7307
  class SQLCompareOperator extends combi_1.Expression {
7308
7308
  getRunnable() {
7309
- const operator = (0, combi_1.altPrio)("=", "<>", "<", ">", "<=", ">=", "EQ", "NE", "GE", "GT", "LT", "LE", "><", "=>");
7309
+ const operator = (0, combi_1.altPrio)("=", "<>", "<", ">", "<=", ">=", "EQ", "NE", "GE", "GT", "LT", "LE", "><", "=>", "=<");
7310
7310
  return operator;
7311
7311
  }
7312
7312
  }
@@ -14004,7 +14004,9 @@ class MoveCorresponding {
14004
14004
  getMatcher() {
14005
14005
  const keeping = (0, combi_1.ver)(version_1.Version.v740sp05, "KEEPING TARGET LINES");
14006
14006
  const expanding = (0, combi_1.ver)(version_1.Version.v740sp05, "EXPANDING NESTED TABLES");
14007
- const move = (0, combi_1.seq)("MOVE-CORRESPONDING", (0, combi_1.optPrio)("EXACT"), expressions_1.Source, "TO", expressions_1.Target, (0, combi_1.optPrio)(expanding), (0, combi_1.optPrio)(keeping));
14007
+ const move = (0, combi_1.seq)("MOVE-CORRESPONDING", (0, combi_1.optPrio)("EXACT"), expressions_1.Source, "TO",
14008
+ // inline defintions not possible in this position,
14009
+ expressions_1.SimpleTarget, (0, combi_1.optPrio)(expanding), (0, combi_1.optPrio)(keeping));
14008
14010
  return move;
14009
14011
  }
14010
14012
  }
@@ -24169,6 +24171,9 @@ class InlineData {
24169
24171
  var _a;
24170
24172
  const token = (_a = node.findFirstExpression(Expressions.TargetField)) === null || _a === void 0 ? void 0 : _a.getFirstToken();
24171
24173
  if (token && type) {
24174
+ if (type instanceof basic_1.CSequenceType) {
24175
+ type = basic_1.StringType.get();
24176
+ }
24172
24177
  const identifier = new _typed_identifier_1.TypedIdentifier(token, filename, type, ["inline" /* IdentifierMeta.InlineDefinition */]);
24173
24178
  scope.addIdentifier(identifier);
24174
24179
  scope.addReference(token, identifier, _reference_1.ReferenceType.DataWriteReference, filename);
@@ -28282,7 +28287,7 @@ class Data {
28282
28287
  const id = new data_definition_1.DataDefinition().runSyntax(dd, scope, filename);
28283
28288
  if ((id === null || id === void 0 ? void 0 : id.getType().isGeneric()) === true
28284
28289
  && (id === null || id === void 0 ? void 0 : id.getType().containsVoid()) === false) {
28285
- throw new Error("DATA definition cannot be generic, " + name);
28290
+ throw new Error("DATA definition cannot be generic, " + (name === null || name === void 0 ? void 0 : name.concatTokens()));
28286
28291
  }
28287
28292
  return id;
28288
28293
  }
@@ -29905,7 +29910,7 @@ const basic_1 = __webpack_require__(/*! ../../types/basic */ "./node_modules/@ab
29905
29910
  class MoveCorresponding {
29906
29911
  runSyntax(node, scope, filename) {
29907
29912
  const s = node.findDirectExpression(Expressions.Source);
29908
- const t = node.findDirectExpression(Expressions.Target);
29913
+ const t = node.findDirectExpression(Expressions.SimpleTarget);
29909
29914
  if (s === undefined || t === undefined) {
29910
29915
  throw new Error("MoveCorresponding, source or target not found");
29911
29916
  }
@@ -48732,7 +48737,7 @@ class Registry {
48732
48737
  }
48733
48738
  static abaplintVersion() {
48734
48739
  // magic, see build script "version.sh"
48735
- return "2.102.25";
48740
+ return "2.102.27";
48736
48741
  }
48737
48742
  getDDICReferences() {
48738
48743
  return this.ddicReferences;
@@ -53631,7 +53636,7 @@ Make sure to test the downported code, it might not always be completely correct
53631
53636
  }
53632
53637
  }
53633
53638
  }
53634
- if (ret.length === 0 && lowFile.getRaw().includes(" xsdbool( ")) {
53639
+ if (ret.length === 0 && lowFile.getRaw().includes(" xsdbool(")) {
53635
53640
  for (let i = 0; i < lowStatements.length; i++) {
53636
53641
  const high = highStatements[i];
53637
53642
  const issue = this.replaceXsdBool(high, lowFile, highSyntax);
@@ -53815,7 +53820,7 @@ Make sure to test the downported code, it might not always be completely correct
53815
53820
  if (found) {
53816
53821
  return found;
53817
53822
  }
53818
- found = this.outlineDataSimple(high, lowFile);
53823
+ found = this.outlineDataSimple(high, lowFile, highSyntax);
53819
53824
  if (found) {
53820
53825
  return found;
53821
53826
  }
@@ -54359,8 +54364,7 @@ ${indentation}CATCH ${className} INTO ${targetName}.`;
54359
54364
  const fix = edit_helper_1.EditHelper.merge(fix2, fix1);
54360
54365
  return issue_1.Issue.atToken(lowFile, node.getFirstToken(), "Outline DATA", this.getMetadata().key, this.conf.severity, fix);
54361
54366
  }
54362
- outlineDataSimple(node, lowFile) {
54363
- // outlines "DATA(ls_msg) = temp1.", note that this does not need to look at types
54367
+ outlineDataSimple(node, lowFile, highSyntax) {
54364
54368
  var _a, _b, _c;
54365
54369
  if (!(node.get() instanceof Statements.Move)) {
54366
54370
  return undefined;
@@ -54399,6 +54403,13 @@ ${indentation}CATCH ${className} INTO ${targetName}.`;
54399
54403
  }
54400
54404
  }
54401
54405
  else {
54406
+ const spag = highSyntax.spaghetti.lookupPosition(source.getFirstToken().getStart(), lowFile.getFilename());
54407
+ if (spag) {
54408
+ const found = spag.findVariable(source.concatTokens());
54409
+ if (found && found.getType().isGeneric() === true) {
54410
+ return undefined;
54411
+ }
54412
+ }
54402
54413
  type = source.concatTokens();
54403
54414
  }
54404
54415
  const targetName = (_c = target.findFirstExpression(Expressions.TargetField)) === null || _c === void 0 ? void 0 : _c.concatTokens();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.102.25",
3
+ "version": "2.102.27",
4
4
  "description": "abaplint - Command Line Interface",
5
5
  "funding": "https://github.com/sponsors/larshp",
6
6
  "bin": {
@@ -38,12 +38,12 @@
38
38
  },
39
39
  "homepage": "https://abaplint.org",
40
40
  "devDependencies": {
41
- "@abaplint/core": "^2.102.25",
41
+ "@abaplint/core": "^2.102.27",
42
42
  "@types/chai": "^4.3.5",
43
43
  "@types/glob": "^7.2.0",
44
44
  "@types/minimist": "^1.2.2",
45
45
  "@types/mocha": "^10.0.1",
46
- "@types/node": "^20.5.1",
46
+ "@types/node": "^20.5.2",
47
47
  "@types/progress": "^2.0.5",
48
48
  "chai": "^4.3.7",
49
49
  "chalk": "^5.3.0",