@abaplint/cli 2.101.8 → 2.101.10

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 +146 -44
  2. package/package.json +4 -4
package/build/cli.js CHANGED
@@ -17109,8 +17109,8 @@ class StructureParser {
17109
17109
  return { issues: [], node: parent };
17110
17110
  }
17111
17111
  }
17112
- StructureParser.singletons = {};
17113
17112
  exports.StructureParser = StructureParser;
17113
+ StructureParser.singletons = {};
17114
17114
  //# sourceMappingURL=structure_parser.js.map
17115
17115
 
17116
17116
  /***/ }),
@@ -18748,26 +18748,26 @@ var AttributeLevel;
18748
18748
  AttributeLevel["Instance"] = "instance";
18749
18749
  AttributeLevel["Static"] = "static";
18750
18750
  AttributeLevel["Constant"] = "constant";
18751
- })(AttributeLevel = exports.AttributeLevel || (exports.AttributeLevel = {}));
18751
+ })(AttributeLevel || (exports.AttributeLevel = AttributeLevel = {}));
18752
18752
  var MethodParameterDirection;
18753
18753
  (function (MethodParameterDirection) {
18754
18754
  MethodParameterDirection["Importing"] = "importing";
18755
18755
  MethodParameterDirection["Exporting"] = "exporting";
18756
18756
  MethodParameterDirection["Changing"] = "changing";
18757
18757
  MethodParameterDirection["Returning"] = "returning";
18758
- })(MethodParameterDirection = exports.MethodParameterDirection || (exports.MethodParameterDirection = {}));
18758
+ })(MethodParameterDirection || (exports.MethodParameterDirection = MethodParameterDirection = {}));
18759
18759
  var Duration;
18760
18760
  (function (Duration) {
18761
18761
  Duration["short"] = "SHORT";
18762
18762
  Duration["medium"] = "MEDIUM";
18763
18763
  Duration["long"] = "LONG";
18764
- })(Duration = exports.Duration || (exports.Duration = {}));
18764
+ })(Duration || (exports.Duration = Duration = {}));
18765
18765
  var RiskLevel;
18766
18766
  (function (RiskLevel) {
18767
18767
  RiskLevel["harmless"] = "HARMLESS";
18768
18768
  RiskLevel["critical"] = "CRITICAL";
18769
18769
  RiskLevel["dangerous"] = "DANGEROUS";
18770
- })(RiskLevel = exports.RiskLevel || (exports.RiskLevel = {}));
18770
+ })(RiskLevel || (exports.RiskLevel = RiskLevel = {}));
18771
18771
  //# sourceMappingURL=_abap_file_information.js.map
18772
18772
 
18773
18773
  /***/ }),
@@ -19218,7 +19218,7 @@ var Visibility;
19218
19218
  Visibility[Visibility["Private"] = 1] = "Private";
19219
19219
  Visibility[Visibility["Protected"] = 2] = "Protected";
19220
19220
  Visibility[Visibility["Public"] = 3] = "Public";
19221
- })(Visibility = exports.Visibility || (exports.Visibility = {}));
19221
+ })(Visibility || (exports.Visibility = Visibility = {}));
19222
19222
  //# sourceMappingURL=visibility.js.map
19223
19223
 
19224
19224
  /***/ }),
@@ -19586,6 +19586,7 @@ class BuiltIn {
19586
19586
  return new _typed_identifier_1.TypedIdentifier(id, BuiltIn.filename, new basic_1.VoidType(name), ["built-in" /* IdentifierMeta.BuiltIn */]);
19587
19587
  }
19588
19588
  }
19589
+ exports.BuiltIn = BuiltIn;
19589
19590
  BuiltIn.filename = "_builtin.prog.abap";
19590
19591
  // todo: "pcre" vs "regex", only one of these parameters are allowed
19591
19592
  // todo: "pcre", only possible from 755
@@ -20409,7 +20410,6 @@ BuiltIn.methods = [
20409
20410
  return: new basic_1.IntegerType(),
20410
20411
  },
20411
20412
  ];
20412
- exports.BuiltIn = BuiltIn;
20413
20413
  //# sourceMappingURL=_builtin.js.map
20414
20414
 
20415
20415
  /***/ }),
@@ -21368,7 +21368,7 @@ var ReferenceType;
21368
21368
  // FormVoidReference = "Form (void)",
21369
21369
  ReferenceType["DataReadReference"] = "Read From";
21370
21370
  ReferenceType["DataWriteReference"] = "Write To";
21371
- })(ReferenceType = exports.ReferenceType || (exports.ReferenceType = {}));
21371
+ })(ReferenceType || (exports.ReferenceType = ReferenceType = {}));
21372
21372
  //# sourceMappingURL=_reference.js.map
21373
21373
 
21374
21374
  /***/ }),
@@ -21401,7 +21401,7 @@ var ScopeType;
21401
21401
  ScopeType["For"] = "for";
21402
21402
  ScopeType["Let"] = "let";
21403
21403
  ScopeType["OpenSQL"] = "open_sql";
21404
- })(ScopeType = exports.ScopeType || (exports.ScopeType = {}));
21404
+ })(ScopeType || (exports.ScopeType = ScopeType = {}));
21405
21405
  //# sourceMappingURL=_scope_type.js.map
21406
21406
 
21407
21407
  /***/ }),
@@ -21681,6 +21681,11 @@ class TypeUtils {
21681
21681
  }
21682
21682
  return true;
21683
21683
  }
21684
+ else if (source instanceof basic_1.Integer8Type) {
21685
+ if (target instanceof basic_1.IntegerType || target instanceof basic_1.StringType) {
21686
+ return false;
21687
+ }
21688
+ }
21684
21689
  return this.isAssignable(source, target);
21685
21690
  }
21686
21691
  isAssignable(source, target) {
@@ -26604,6 +26609,15 @@ class SpaghettiScopeNode extends ScopeData {
26604
26609
  }
26605
26610
  return undefined;
26606
26611
  }
26612
+ listClassDefinitions() {
26613
+ let search = this;
26614
+ const ret = [];
26615
+ while (search !== undefined) {
26616
+ ret.push(...Object.values(search.getData().cdefs));
26617
+ search = search.getParent();
26618
+ }
26619
+ return ret;
26620
+ }
26607
26621
  findFormDefinition(name) {
26608
26622
  let search = this;
26609
26623
  const upper = name.toUpperCase();
@@ -34698,6 +34712,7 @@ __exportStar(__webpack_require__(/*! ./floating_point_type */ "./node_modules/@a
34698
34712
  __exportStar(__webpack_require__(/*! ./generic_object_reference_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/generic_object_reference_type.js"), exports);
34699
34713
  __exportStar(__webpack_require__(/*! ./hex_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/hex_type.js"), exports);
34700
34714
  __exportStar(__webpack_require__(/*! ./integer_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/integer_type.js"), exports);
34715
+ __exportStar(__webpack_require__(/*! ./integer8_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/integer8_type.js"), exports);
34701
34716
  __exportStar(__webpack_require__(/*! ./numeric_generic_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/numeric_generic_type.js"), exports);
34702
34717
  __exportStar(__webpack_require__(/*! ./numeric_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/numeric_type.js"), exports);
34703
34718
  __exportStar(__webpack_require__(/*! ./object_reference_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/object_reference_type.js"), exports);
@@ -34716,6 +34731,39 @@ __exportStar(__webpack_require__(/*! ./xstring_type */ "./node_modules/@abaplint
34716
34731
 
34717
34732
  /***/ }),
34718
34733
 
34734
+ /***/ "./node_modules/@abaplint/core/build/src/abap/types/basic/integer8_type.js":
34735
+ /*!*********************************************************************************!*\
34736
+ !*** ./node_modules/@abaplint/core/build/src/abap/types/basic/integer8_type.js ***!
34737
+ \*********************************************************************************/
34738
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
34739
+
34740
+ "use strict";
34741
+
34742
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
34743
+ exports.Integer8Type = void 0;
34744
+ const _abstract_type_1 = __webpack_require__(/*! ./_abstract_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/_abstract_type.js");
34745
+ class Integer8Type extends _abstract_type_1.AbstractType {
34746
+ toText() {
34747
+ return "```int8```";
34748
+ }
34749
+ isGeneric() {
34750
+ return false;
34751
+ }
34752
+ toABAP() {
34753
+ return "int8";
34754
+ }
34755
+ containsVoid() {
34756
+ return false;
34757
+ }
34758
+ toCDS() {
34759
+ return "abap.int8";
34760
+ }
34761
+ }
34762
+ exports.Integer8Type = Integer8Type;
34763
+ //# sourceMappingURL=integer8_type.js.map
34764
+
34765
+ /***/ }),
34766
+
34719
34767
  /***/ "./node_modules/@abaplint/core/build/src/abap/types/basic/integer_type.js":
34720
34768
  /*!********************************************************************************!*\
34721
34769
  !*** ./node_modules/@abaplint/core/build/src/abap/types/basic/integer_type.js ***!
@@ -35069,13 +35117,13 @@ var TableAccessType;
35069
35117
  TableAccessType["hashed"] = "HASHED";
35070
35118
  TableAccessType["index"] = "INDEX";
35071
35119
  TableAccessType["any"] = "ANY";
35072
- })(TableAccessType = exports.TableAccessType || (exports.TableAccessType = {}));
35120
+ })(TableAccessType || (exports.TableAccessType = TableAccessType = {}));
35073
35121
  var TableKeyType;
35074
35122
  (function (TableKeyType) {
35075
35123
  TableKeyType["default"] = "DEFAULT";
35076
35124
  TableKeyType["user"] = "USER";
35077
35125
  TableKeyType["empty"] = "EMPTY";
35078
- })(TableKeyType = exports.TableKeyType || (exports.TableKeyType = {}));
35126
+ })(TableKeyType || (exports.TableKeyType = TableKeyType = {}));
35079
35127
  class TableType extends _abstract_type_1.AbstractType {
35080
35128
  constructor(rowType, options, qualifiedName) {
35081
35129
  var _a;
@@ -35973,7 +36021,7 @@ var FunctionModuleParameterDirection;
35973
36021
  FunctionModuleParameterDirection["exporting"] = "exporting";
35974
36022
  FunctionModuleParameterDirection["changing"] = "changing";
35975
36023
  FunctionModuleParameterDirection["tables"] = "tables";
35976
- })(FunctionModuleParameterDirection = exports.FunctionModuleParameterDirection || (exports.FunctionModuleParameterDirection = {}));
36024
+ })(FunctionModuleParameterDirection || (exports.FunctionModuleParameterDirection = FunctionModuleParameterDirection = {}));
35977
36025
  class FunctionModuleDefinition {
35978
36026
  constructor(data) {
35979
36027
  this.parse(data);
@@ -38175,8 +38223,9 @@ class DDIC {
38175
38223
  case "CSEQUENCE":
38176
38224
  return new Types.CSequenceType({ qualifiedName: qualifiedName });
38177
38225
  case "I":
38178
- case "INT8": // todo, take version into account
38179
38226
  return new Types.IntegerType({ qualifiedName: qualifiedName || name });
38227
+ case "INT8": // todo, take version into account
38228
+ return new Types.Integer8Type({ qualifiedName: qualifiedName || name });
38180
38229
  case "F":
38181
38230
  return new Types.FloatType({ qualifiedName: qualifiedName || name });
38182
38231
  case "P":
@@ -38656,7 +38705,7 @@ var DDLKind;
38656
38705
  (function (DDLKind) {
38657
38706
  DDLKind["Structure"] = "structure";
38658
38707
  DDLKind["Table"] = "table";
38659
- })(DDLKind = exports.DDLKind || (exports.DDLKind = {}));
38708
+ })(DDLKind || (exports.DDLKind = DDLKind = {}));
38660
38709
  class DDLParser {
38661
38710
  parse(file) {
38662
38711
  const tokens = ddl_lexer_1.DDLLexer.run(file);
@@ -39579,6 +39628,7 @@ const _scope_type_1 = __webpack_require__(/*! ../abap/5_syntax/_scope_type */ ".
39579
39628
  const types_1 = __webpack_require__(/*! ../abap/types */ "./node_modules/@abaplint/core/build/src/abap/types/index.js");
39580
39629
  class LSPLookup {
39581
39630
  static lookup(cursor, reg, obj) {
39631
+ var _a, _b;
39582
39632
  const inc = this.findInclude(cursor, reg);
39583
39633
  if (inc) {
39584
39634
  const found = this.ABAPFileResult(inc);
@@ -39648,6 +39698,22 @@ class LSPLookup {
39648
39698
  }
39649
39699
  return { hover: hoverValue, definition: location, implementation: location, definitionId: variable, scope: bottomScope };
39650
39700
  }
39701
+ for (const c of bottomScope.listClassDefinitions()) {
39702
+ for (const m of ((_a = c.getMethodDefinitions()) === null || _a === void 0 ? void 0 : _a.getAll()) || []) {
39703
+ for (const p of ((_b = m.getParameters()) === null || _b === void 0 ? void 0 : _b.getAll()) || []) {
39704
+ if (p.getStart().equals(cursor.token.getStart())) {
39705
+ const found = _lsp_utils_1.LSPUtils.identiferToLocation(p);
39706
+ return {
39707
+ hover: "Method Parameter, " + cursor.token.getStr(),
39708
+ definition: found,
39709
+ definitionId: p,
39710
+ implementation: undefined,
39711
+ scope: bottomScope,
39712
+ };
39713
+ }
39714
+ }
39715
+ }
39716
+ }
39651
39717
  const refs = this.searchReferences(bottomScope, cursor.token);
39652
39718
  if (refs.length > 0) {
39653
39719
  for (const ref of refs) {
@@ -41055,12 +41121,14 @@ const _typed_identifier_1 = __webpack_require__(/*! ../abap/types/_typed_identif
41055
41121
  const types_1 = __webpack_require__(/*! ../abap/types */ "./node_modules/@abaplint/core/build/src/abap/types/index.js");
41056
41122
  const references_1 = __webpack_require__(/*! ./references */ "./node_modules/@abaplint/core/build/src/lsp/references.js");
41057
41123
  const renamer_1 = __webpack_require__(/*! ../objects/rename/renamer */ "./node_modules/@abaplint/core/build/src/objects/rename/renamer.js");
41124
+ const definition_1 = __webpack_require__(/*! ./definition */ "./node_modules/@abaplint/core/build/src/lsp/definition.js");
41058
41125
  var RenameType;
41059
41126
  (function (RenameType) {
41060
41127
  RenameType[RenameType["GlobalClass"] = 1] = "GlobalClass";
41061
41128
  RenameType[RenameType["Variable"] = 2] = "Variable";
41062
41129
  RenameType[RenameType["GlobalInterface"] = 3] = "GlobalInterface";
41063
- })(RenameType = exports.RenameType || (exports.RenameType = {}));
41130
+ RenameType[RenameType["Method"] = 4] = "Method";
41131
+ })(RenameType || (exports.RenameType = RenameType = {}));
41064
41132
  class Rename {
41065
41133
  constructor(reg) {
41066
41134
  this.reg = reg;
@@ -41079,15 +41147,23 @@ class Rename {
41079
41147
  return undefined;
41080
41148
  }
41081
41149
  const range = _lsp_utils_1.LSPUtils.tokenToRange(cursor.token);
41150
+ let placeholder = cursor.token.getStr();
41151
+ if (placeholder.startsWith("!")) {
41152
+ placeholder = placeholder.substring(1);
41153
+ range.start.character += 1;
41154
+ }
41082
41155
  const lookup = _lookup_1.LSPLookup.lookup(cursor, this.reg, obj);
41083
41156
  if ((lookup === null || lookup === void 0 ? void 0 : lookup.definitionId) instanceof _typed_identifier_1.TypedIdentifier) {
41084
- return { range, placeholder: cursor.token.getStr(), type: RenameType.Variable, file };
41157
+ return { range, placeholder, type: RenameType.Variable, file };
41085
41158
  }
41086
41159
  else if ((lookup === null || lookup === void 0 ? void 0 : lookup.definitionId) instanceof types_1.ClassDefinition) {
41087
- return { range, placeholder: cursor.token.getStr(), type: RenameType.GlobalClass, file };
41160
+ return { range, placeholder, type: RenameType.GlobalClass, file };
41088
41161
  }
41089
41162
  else if ((lookup === null || lookup === void 0 ? void 0 : lookup.definitionId) instanceof types_1.InterfaceDefinition) {
41090
- return { range, placeholder: cursor.token.getStr(), type: RenameType.GlobalInterface, file };
41163
+ return { range, placeholder, type: RenameType.GlobalInterface, file };
41164
+ }
41165
+ else if ((lookup === null || lookup === void 0 ? void 0 : lookup.definitionId) instanceof types_1.MethodDefinition) {
41166
+ return { range, placeholder, type: RenameType.Method, file };
41091
41167
  }
41092
41168
  return undefined;
41093
41169
  }
@@ -41103,6 +41179,8 @@ class Rename {
41103
41179
  return new renamer_1.Renamer(this.reg).buildEdits("INTF", prepare.placeholder, params.newName);
41104
41180
  case RenameType.Variable:
41105
41181
  return this.renameVariable(params);
41182
+ case RenameType.Method:
41183
+ return this.renameMethod(params);
41106
41184
  default:
41107
41185
  return undefined;
41108
41186
  }
@@ -41119,6 +41197,23 @@ class Rename {
41119
41197
  }
41120
41198
  return workspace;
41121
41199
  }
41200
+ renameMethod(params) {
41201
+ var _a, _b;
41202
+ const workspace = { documentChanges: [] };
41203
+ const refs = new references_1.References(this.reg).references(params);
41204
+ for (const r of refs) {
41205
+ const doc = { uri: r.uri, version: 1 };
41206
+ const edit = LServer.TextDocumentEdit.create(doc, [LServer.TextEdit.replace(r.range, params.newName)]);
41207
+ (_a = workspace.documentChanges) === null || _a === void 0 ? void 0 : _a.push(edit);
41208
+ }
41209
+ const def = new definition_1.Definition(this.reg).find(params.textDocument, params.position);
41210
+ if (def) {
41211
+ const doc = { uri: params.textDocument.uri, version: 1 };
41212
+ const edit = LServer.TextDocumentEdit.create(doc, [LServer.TextEdit.replace(def === null || def === void 0 ? void 0 : def.range, params.newName)]);
41213
+ (_b = workspace.documentChanges) === null || _b === void 0 ? void 0 : _b.push(edit);
41214
+ }
41215
+ return workspace;
41216
+ }
41122
41217
  }
41123
41218
  exports.Rename = Rename;
41124
41219
  //# sourceMappingURL=rename.js.map
@@ -41261,8 +41356,8 @@ class SemanticHighlighting {
41261
41356
  return ret;
41262
41357
  }
41263
41358
  }
41264
- SemanticHighlighting.tokenTypes = [];
41265
41359
  exports.SemanticHighlighting = SemanticHighlighting;
41360
+ SemanticHighlighting.tokenTypes = [];
41266
41361
  //# sourceMappingURL=semantic.js.map
41267
41362
 
41268
41363
  /***/ }),
@@ -42530,7 +42625,7 @@ var ClassCategory;
42530
42625
  ClassCategory["PersistentFactory"] = "11";
42531
42626
  ClassCategory["Exception"] = "40";
42532
42627
  ClassCategory["SharedObject"] = "45";
42533
- })(ClassCategory = exports.ClassCategory || (exports.ClassCategory = {}));
42628
+ })(ClassCategory || (exports.ClassCategory = ClassCategory = {}));
42534
42629
  class Class extends _abap_object_1.ABAPObject {
42535
42630
  constructor() {
42536
42631
  super(...arguments);
@@ -46590,7 +46685,7 @@ var EnhancementCategory;
46590
46685
  EnhancementCategory["Character"] = "2";
46591
46686
  EnhancementCategory["CharacterOrNumeric"] = "3";
46592
46687
  EnhancementCategory["Deep"] = "4";
46593
- })(EnhancementCategory = exports.EnhancementCategory || (exports.EnhancementCategory = {}));
46688
+ })(EnhancementCategory || (exports.EnhancementCategory = EnhancementCategory = {}));
46594
46689
  var TableCategory;
46595
46690
  (function (TableCategory) {
46596
46691
  TableCategory["Transparent"] = "TRANSP";
@@ -46599,7 +46694,7 @@ var TableCategory;
46599
46694
  TableCategory["Pooled"] = "POOL";
46600
46695
  TableCategory["View"] = "VIEW";
46601
46696
  TableCategory["Append"] = "APPEND";
46602
- })(TableCategory = exports.TableCategory || (exports.TableCategory = {}));
46697
+ })(TableCategory || (exports.TableCategory = TableCategory = {}));
46603
46698
  class Table extends _abstract_object_1.AbstractObject {
46604
46699
  getType() {
46605
46700
  return "TABL";
@@ -48065,7 +48160,7 @@ class Registry {
48065
48160
  }
48066
48161
  static abaplintVersion() {
48067
48162
  // magic, see build script "version.sh"
48068
- return "2.101.8";
48163
+ return "2.101.10";
48069
48164
  }
48070
48165
  getDDICReferences() {
48071
48166
  return this.ddicReferences;
@@ -48517,7 +48612,7 @@ var RuleTag;
48517
48612
  RuleTag["Styleguide"] = "Styleguide";
48518
48613
  /** Single file compatible, the rule gives correct results when having only information about the single file */
48519
48614
  RuleTag["SingleFile"] = "SingleFile";
48520
- })(RuleTag = exports.RuleTag || (exports.RuleTag = {}));
48615
+ })(RuleTag || (exports.RuleTag = RuleTag = {}));
48521
48616
  //# sourceMappingURL=_irule.js.map
48522
48617
 
48523
48618
  /***/ }),
@@ -55316,9 +55411,16 @@ ${indentation} output = ${topTarget}.`;
55316
55411
  const data = `DATA ${name} TYPE REF TO ${type}.\n` +
55317
55412
  indentation + abap + "\n" +
55318
55413
  indentation;
55319
- const fix1 = edit_helper_1.EditHelper.insertAt(lowFile, high.getFirstToken().getStart(), data);
55320
- const fix2 = edit_helper_1.EditHelper.replaceRange(lowFile, found.getFirstToken().getStart(), found.getLastToken().getEnd(), name);
55321
- fix = edit_helper_1.EditHelper.merge(fix2, fix1);
55414
+ if (found.getFirstToken().getStart().equals(high.getFirstToken().getStart())
55415
+ && found.getLastToken().getEnd().equals(high.getLastToken().getStart())) {
55416
+ // full statement = standalone NEW expression
55417
+ fix = edit_helper_1.EditHelper.replaceRange(lowFile, high.getFirstToken().getStart(), high.getLastToken().getEnd(), abap);
55418
+ }
55419
+ else {
55420
+ const fix1 = edit_helper_1.EditHelper.insertAt(lowFile, high.getFirstToken().getStart(), data);
55421
+ const fix2 = edit_helper_1.EditHelper.replaceRange(lowFile, found.getFirstToken().getStart(), found.getLastToken().getEnd(), name);
55422
+ fix = edit_helper_1.EditHelper.merge(fix2, fix1);
55423
+ }
55322
55424
  }
55323
55425
  if (fix) {
55324
55426
  return issue_1.Issue.atToken(lowFile, high.getFirstToken(), "Use CREATE OBJECT instead of NEW", this.getMetadata().key, this.conf.severity, fix);
@@ -55684,24 +55786,24 @@ class EmptyStructure extends _abap_rule_1.ABAPRule {
55684
55786
  }
55685
55787
  const candidates = [];
55686
55788
  if (this.getConfig().loop === true) {
55687
- candidates.push(...stru.findAllStructures(Structures.Loop));
55789
+ candidates.push(...stru.findAllStructuresRecursive(Structures.Loop));
55688
55790
  }
55689
55791
  if (this.getConfig().while === true) {
55690
- candidates.push(...stru.findAllStructures(Structures.While));
55792
+ candidates.push(...stru.findAllStructuresRecursive(Structures.While));
55691
55793
  }
55692
55794
  if (this.getConfig().case === true) {
55693
- candidates.push(...stru.findAllStructures(Structures.Case));
55795
+ candidates.push(...stru.findAllStructuresRecursive(Structures.Case));
55694
55796
  }
55695
55797
  if (this.getConfig().select === true) {
55696
- candidates.push(...stru.findAllStructures(Structures.Select));
55798
+ candidates.push(...stru.findAllStructuresRecursive(Structures.Select));
55697
55799
  }
55698
55800
  if (this.getConfig().do === true) {
55699
- candidates.push(...stru.findAllStructures(Structures.Do));
55801
+ candidates.push(...stru.findAllStructuresRecursive(Structures.Do));
55700
55802
  }
55701
55803
  if (this.getConfig().at === true) {
55702
- candidates.push(...stru.findAllStructures(Structures.At));
55703
- candidates.push(...stru.findAllStructures(Structures.AtFirst));
55704
- candidates.push(...stru.findAllStructures(Structures.AtLast));
55804
+ candidates.push(...stru.findAllStructuresRecursive(Structures.At));
55805
+ candidates.push(...stru.findAllStructuresRecursive(Structures.AtFirst));
55806
+ candidates.push(...stru.findAllStructuresRecursive(Structures.AtLast));
55705
55807
  }
55706
55808
  for (const l of candidates) {
55707
55809
  if (l.getChildren().length === 2) {
@@ -55711,7 +55813,7 @@ class EmptyStructure extends _abap_rule_1.ABAPRule {
55711
55813
  }
55712
55814
  }
55713
55815
  if (this.getConfig().try === true) {
55714
- const tries = stru.findAllStructures(Structures.Try);
55816
+ const tries = stru.findAllStructuresRecursive(Structures.Try);
55715
55817
  for (const t of tries) {
55716
55818
  const normal = t.findDirectStructure(Structures.Body);
55717
55819
  if (normal === undefined) {
@@ -55722,9 +55824,9 @@ class EmptyStructure extends _abap_rule_1.ABAPRule {
55722
55824
  }
55723
55825
  }
55724
55826
  if (this.getConfig().if === true) {
55725
- const tries = stru.findAllStructures(Structures.If)
55726
- .concat(stru.findAllStructures(Structures.Else))
55727
- .concat(stru.findAllStructures(Structures.ElseIf));
55827
+ const tries = stru.findAllStructuresRecursive(Structures.If)
55828
+ .concat(stru.findAllStructuresRecursive(Structures.Else))
55829
+ .concat(stru.findAllStructuresRecursive(Structures.ElseIf));
55728
55830
  for (const t of tries) {
55729
55831
  const normal = t.findDirectStructure(Structures.Body);
55730
55832
  if (normal === undefined) {
@@ -55735,7 +55837,7 @@ class EmptyStructure extends _abap_rule_1.ABAPRule {
55735
55837
  }
55736
55838
  }
55737
55839
  if (this.getConfig().when === true) {
55738
- const tries = stru.findAllStructures(Structures.When);
55840
+ const tries = stru.findAllStructuresRecursive(Structures.When);
55739
55841
  for (const t of tries) {
55740
55842
  if (t.getChildren().length === 1) {
55741
55843
  const token = t.getFirstToken();
@@ -58555,7 +58657,7 @@ var KeywordCaseStyle;
58555
58657
  (function (KeywordCaseStyle) {
58556
58658
  KeywordCaseStyle["Upper"] = "upper";
58557
58659
  KeywordCaseStyle["Lower"] = "lower";
58558
- })(KeywordCaseStyle = exports.KeywordCaseStyle || (exports.KeywordCaseStyle = {}));
58660
+ })(KeywordCaseStyle || (exports.KeywordCaseStyle = KeywordCaseStyle = {}));
58559
58661
  class KeywordCaseConf extends _basic_rule_config_1.BasicRuleConfig {
58560
58662
  constructor() {
58561
58663
  super(...arguments);
@@ -60802,7 +60904,7 @@ var NewlineLogic;
60802
60904
  (function (NewlineLogic) {
60803
60905
  NewlineLogic["Exact"] = "exact";
60804
60906
  NewlineLogic["Less"] = "less";
60805
- })(NewlineLogic = exports.NewlineLogic || (exports.NewlineLogic = {}));
60907
+ })(NewlineLogic || (exports.NewlineLogic = NewlineLogic = {}));
60806
60908
  class NewlineBetweenMethodsConf extends _basic_rule_config_1.BasicRuleConfig {
60807
60909
  constructor() {
60808
60910
  super(...arguments);
@@ -68556,7 +68658,7 @@ var Severity;
68556
68658
  Severity["Error"] = "Error";
68557
68659
  Severity["Warning"] = "Warning";
68558
68660
  Severity["Info"] = "Info";
68559
- })(Severity = exports.Severity || (exports.Severity = {}));
68661
+ })(Severity || (exports.Severity = Severity = {}));
68560
68662
  //# sourceMappingURL=severity.js.map
68561
68663
 
68562
68664
  /***/ }),
@@ -69205,7 +69307,7 @@ var Version;
69205
69307
  Version["v756"] = "v756";
69206
69308
  Version["v757"] = "v757";
69207
69309
  Version["Cloud"] = "Cloud";
69208
- })(Version = exports.Version || (exports.Version = {}));
69310
+ })(Version || (exports.Version = Version = {}));
69209
69311
  exports.defaultVersion = Version.v757;
69210
69312
  function getPreviousVersion(v) {
69211
69313
  if (v === Version.OpenABAP) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.101.8",
3
+ "version": "2.101.10",
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.101.8",
41
+ "@abaplint/core": "^2.101.10",
42
42
  "@types/chai": "^4.3.5",
43
43
  "@types/glob": "^7.2.0",
44
44
  "@types/minimist": "^1.2.2",
@@ -54,8 +54,8 @@
54
54
  "minimist": "^1.2.8",
55
55
  "mocha": "^10.2.0",
56
56
  "progress": "^2.0.3",
57
- "typescript": "^5.0.4",
58
- "webpack": "^5.84.1",
57
+ "typescript": "^5.1.3",
58
+ "webpack": "^5.85.0",
59
59
  "webpack-cli": "^5.1.1",
60
60
  "xml-js": "^1.6.11"
61
61
  },