@abaplint/cli 2.105.18 → 2.105.20
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.
- package/build/cli.js +67 -9
- package/package.json +3 -3
package/build/cli.js
CHANGED
|
@@ -7196,7 +7196,7 @@ const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/co
|
|
|
7196
7196
|
const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
|
|
7197
7197
|
class RaiseWith extends combi_1.Expression {
|
|
7198
7198
|
getRunnable() {
|
|
7199
|
-
const wit = (0, combi_1.seq)("WITH", _1.
|
|
7199
|
+
const wit = (0, combi_1.seq)("WITH", _1.SimpleSource1, (0, combi_1.opt)(_1.SimpleSource1), (0, combi_1.opt)(_1.SimpleSource1), (0, combi_1.opt)(_1.SimpleSource1));
|
|
7200
7200
|
return wit;
|
|
7201
7201
|
}
|
|
7202
7202
|
}
|
|
@@ -22366,6 +22366,7 @@ class TypeUtils {
|
|
|
22366
22366
|
|| type instanceof basic_1.CSequenceType
|
|
22367
22367
|
|| type instanceof cgeneric_type_1.CGenericType
|
|
22368
22368
|
|| type instanceof basic_1.DateType
|
|
22369
|
+
|| type instanceof basic_1.DataType
|
|
22369
22370
|
|| type instanceof basic_1.CLikeType
|
|
22370
22371
|
|| type instanceof basic_1.PackedType
|
|
22371
22372
|
|| type instanceof basic_1.TimeType) {
|
|
@@ -22596,7 +22597,9 @@ class TypeUtils {
|
|
|
22596
22597
|
else if (target instanceof basic_1.CLikeType) {
|
|
22597
22598
|
return this.isCharLikeStrict(source);
|
|
22598
22599
|
}
|
|
22599
|
-
else if (target instanceof basic_1.VoidType
|
|
22600
|
+
else if (target instanceof basic_1.VoidType
|
|
22601
|
+
|| target instanceof basic_1.AnyType
|
|
22602
|
+
|| target instanceof basic_1.DataType) {
|
|
22600
22603
|
return true;
|
|
22601
22604
|
}
|
|
22602
22605
|
return false;
|
|
@@ -22658,6 +22661,7 @@ class TypeUtils {
|
|
|
22658
22661
|
}
|
|
22659
22662
|
if (source instanceof basic_1.VoidType
|
|
22660
22663
|
|| source instanceof basic_1.AnyType
|
|
22664
|
+
|| source instanceof basic_1.DataType
|
|
22661
22665
|
|| source instanceof basic_1.UnknownType) {
|
|
22662
22666
|
return true;
|
|
22663
22667
|
}
|
|
@@ -22702,6 +22706,7 @@ class TypeUtils {
|
|
|
22702
22706
|
if (source instanceof basic_1.ObjectReferenceType
|
|
22703
22707
|
|| source instanceof basic_1.GenericObjectReferenceType
|
|
22704
22708
|
|| source instanceof basic_1.VoidType
|
|
22709
|
+
|| source instanceof basic_1.DataType
|
|
22705
22710
|
|| source instanceof basic_1.AnyType
|
|
22706
22711
|
|| source instanceof basic_1.UnknownType) {
|
|
22707
22712
|
return true;
|
|
@@ -22711,6 +22716,7 @@ class TypeUtils {
|
|
|
22711
22716
|
else if (target instanceof basic_1.DataReference) {
|
|
22712
22717
|
if (source instanceof basic_1.DataReference
|
|
22713
22718
|
|| source instanceof basic_1.VoidType
|
|
22719
|
+
|| source instanceof basic_1.DataType
|
|
22714
22720
|
|| source instanceof basic_1.AnyType
|
|
22715
22721
|
|| source instanceof basic_1.UnknownType) {
|
|
22716
22722
|
return true;
|
|
@@ -22723,6 +22729,7 @@ class TypeUtils {
|
|
|
22723
22729
|
}
|
|
22724
22730
|
else if (source instanceof basic_1.VoidType
|
|
22725
22731
|
|| source instanceof basic_1.AnyType
|
|
22732
|
+
|| source instanceof basic_1.DataType
|
|
22726
22733
|
|| source instanceof basic_1.UnknownType) {
|
|
22727
22734
|
return true;
|
|
22728
22735
|
}
|
|
@@ -23619,7 +23626,7 @@ class BasicTypes {
|
|
|
23619
23626
|
return new Types.DataReference(found);
|
|
23620
23627
|
}
|
|
23621
23628
|
else if (chain.concatTokens().toUpperCase() === "DATA") {
|
|
23622
|
-
return new Types.DataReference(new Types.
|
|
23629
|
+
return new Types.DataReference(new Types.DataType());
|
|
23623
23630
|
}
|
|
23624
23631
|
if (this.scope.isBadiDef(name) === true) {
|
|
23625
23632
|
return new Types.VoidType(name);
|
|
@@ -24517,6 +24524,7 @@ class Dereference {
|
|
|
24517
24524
|
runSyntax(type) {
|
|
24518
24525
|
if (type instanceof basic_1.VoidType
|
|
24519
24526
|
|| type instanceof basic_1.AnyType
|
|
24527
|
+
|| type instanceof basic_1.DataType
|
|
24520
24528
|
|| type === undefined
|
|
24521
24529
|
|| type instanceof basic_1.UnknownType) {
|
|
24522
24530
|
return type;
|
|
@@ -26302,7 +26310,7 @@ const Expressions = __webpack_require__(/*! ../../2_statements/expressions */ ".
|
|
|
26302
26310
|
const source_1 = __webpack_require__(/*! ./source */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/expressions/source.js");
|
|
26303
26311
|
class RaiseWith {
|
|
26304
26312
|
runSyntax(node, scope, filename) {
|
|
26305
|
-
for (const f of node.findDirectExpressions(Expressions.
|
|
26313
|
+
for (const f of node.findDirectExpressions(Expressions.SimpleSource1)) {
|
|
26306
26314
|
new source_1.Source().runSyntax(f, scope, filename);
|
|
26307
26315
|
}
|
|
26308
26316
|
}
|
|
@@ -30708,6 +30716,7 @@ class Loop {
|
|
|
30708
30716
|
}
|
|
30709
30717
|
else if (!(sourceType instanceof basic_1.TableType)
|
|
30710
30718
|
&& !(sourceType instanceof basic_1.AnyType)
|
|
30719
|
+
&& !(sourceType instanceof basic_1.DataType)
|
|
30711
30720
|
&& !(sourceType instanceof basic_1.VoidType)
|
|
30712
30721
|
&& concat.startsWith("LOOP AT GROUP ") === false) {
|
|
30713
30722
|
throw new Error("Loop, not a table type");
|
|
@@ -35925,6 +35934,7 @@ exports.CSequenceType = CSequenceType;
|
|
|
35925
35934
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
35926
35935
|
exports.DataReference = void 0;
|
|
35927
35936
|
const _abstract_type_1 = __webpack_require__(/*! ./_abstract_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/_abstract_type.js");
|
|
35937
|
+
const any_type_1 = __webpack_require__(/*! ./any_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/any_type.js");
|
|
35928
35938
|
class DataReference extends _abstract_type_1.AbstractType {
|
|
35929
35939
|
constructor(type, qualifiedName) {
|
|
35930
35940
|
super({ qualifiedName: qualifiedName });
|
|
@@ -35944,7 +35954,9 @@ class DataReference extends _abstract_type_1.AbstractType {
|
|
|
35944
35954
|
return "REF TO " + this.type.toABAP();
|
|
35945
35955
|
}
|
|
35946
35956
|
isGeneric() {
|
|
35947
|
-
|
|
35957
|
+
if (this.type instanceof any_type_1.AnyType) {
|
|
35958
|
+
return true;
|
|
35959
|
+
}
|
|
35948
35960
|
return false;
|
|
35949
35961
|
}
|
|
35950
35962
|
containsVoid() {
|
|
@@ -35959,6 +35971,39 @@ exports.DataReference = DataReference;
|
|
|
35959
35971
|
|
|
35960
35972
|
/***/ }),
|
|
35961
35973
|
|
|
35974
|
+
/***/ "./node_modules/@abaplint/core/build/src/abap/types/basic/data_type.js":
|
|
35975
|
+
/*!*****************************************************************************!*\
|
|
35976
|
+
!*** ./node_modules/@abaplint/core/build/src/abap/types/basic/data_type.js ***!
|
|
35977
|
+
\*****************************************************************************/
|
|
35978
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
35979
|
+
|
|
35980
|
+
"use strict";
|
|
35981
|
+
|
|
35982
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
35983
|
+
exports.DataType = void 0;
|
|
35984
|
+
const _abstract_type_1 = __webpack_require__(/*! ./_abstract_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/_abstract_type.js");
|
|
35985
|
+
class DataType extends _abstract_type_1.AbstractType {
|
|
35986
|
+
toText() {
|
|
35987
|
+
return "```data```";
|
|
35988
|
+
}
|
|
35989
|
+
toABAP() {
|
|
35990
|
+
return "data";
|
|
35991
|
+
}
|
|
35992
|
+
isGeneric() {
|
|
35993
|
+
return true;
|
|
35994
|
+
}
|
|
35995
|
+
containsVoid() {
|
|
35996
|
+
return false;
|
|
35997
|
+
}
|
|
35998
|
+
toCDS() {
|
|
35999
|
+
return "abap.TODO_DATA";
|
|
36000
|
+
}
|
|
36001
|
+
}
|
|
36002
|
+
exports.DataType = DataType;
|
|
36003
|
+
//# sourceMappingURL=data_type.js.map
|
|
36004
|
+
|
|
36005
|
+
/***/ }),
|
|
36006
|
+
|
|
35962
36007
|
/***/ "./node_modules/@abaplint/core/build/src/abap/types/basic/date_type.js":
|
|
35963
36008
|
/*!*****************************************************************************!*\
|
|
35964
36009
|
!*** ./node_modules/@abaplint/core/build/src/abap/types/basic/date_type.js ***!
|
|
@@ -36309,6 +36354,7 @@ __exportStar(__webpack_require__(/*! ./character_type */ "./node_modules/@abapli
|
|
|
36309
36354
|
__exportStar(__webpack_require__(/*! ./clike_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/clike_type.js"), exports);
|
|
36310
36355
|
__exportStar(__webpack_require__(/*! ./csequence_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/csequence_type.js"), exports);
|
|
36311
36356
|
__exportStar(__webpack_require__(/*! ./data_reference_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/data_reference_type.js"), exports);
|
|
36357
|
+
__exportStar(__webpack_require__(/*! ./data_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/data_type.js"), exports);
|
|
36312
36358
|
__exportStar(__webpack_require__(/*! ./date_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/date_type.js"), exports);
|
|
36313
36359
|
__exportStar(__webpack_require__(/*! ./decfloat_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/decfloat_type.js"), exports);
|
|
36314
36360
|
__exportStar(__webpack_require__(/*! ./decfloat16_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/decfloat16_type.js"), exports);
|
|
@@ -39950,7 +39996,7 @@ class DDIC {
|
|
|
39950
39996
|
case "TABLE":
|
|
39951
39997
|
return new Types.TableType(new Types.AnyType(), { withHeader: false, keyType: Types.TableKeyType.default });
|
|
39952
39998
|
case "DATA":
|
|
39953
|
-
return new Types.
|
|
39999
|
+
return new Types.DataType({ qualifiedName: qualifiedName });
|
|
39954
40000
|
case "NUMERIC":
|
|
39955
40001
|
return new Types.NumericGenericType({ qualifiedName: qualifiedName });
|
|
39956
40002
|
case "UTCLONG": // todo, take version into account
|
|
@@ -50177,7 +50223,7 @@ class TableType extends _abstract_object_1.AbstractObject {
|
|
|
50177
50223
|
type = new Types.TableType(new basic_1.GenericObjectReferenceType(), tableOptions, this.getName());
|
|
50178
50224
|
}
|
|
50179
50225
|
else if (this.parsedXML.rowkind === "R" && this.parsedXML.rowtype === "DATA") {
|
|
50180
|
-
type = new Types.TableType(new basic_1.DataReference(new
|
|
50226
|
+
type = new Types.TableType(new basic_1.DataReference(new Types.DataType()), tableOptions, this.getName());
|
|
50181
50227
|
}
|
|
50182
50228
|
else if (this.parsedXML.rowkind === "R" && this.parsedXML.rowtype !== undefined) {
|
|
50183
50229
|
const lookup = ddic.lookupObject(this.parsedXML.rowtype);
|
|
@@ -51249,7 +51295,7 @@ class Registry {
|
|
|
51249
51295
|
}
|
|
51250
51296
|
static abaplintVersion() {
|
|
51251
51297
|
// magic, see build script "version.sh"
|
|
51252
|
-
return "2.105.
|
|
51298
|
+
return "2.105.20";
|
|
51253
51299
|
}
|
|
51254
51300
|
getDDICReferences() {
|
|
51255
51301
|
return this.ddicReferences;
|
|
@@ -57059,7 +57105,7 @@ ${indentation}CATCH ${className} INTO ${targetName}.`;
|
|
|
57059
57105
|
}
|
|
57060
57106
|
startToken = node.getFirstToken();
|
|
57061
57107
|
}
|
|
57062
|
-
const withs = ((_f = node.findDirectExpression(Expressions.RaiseWith)) === null || _f === void 0 ? void 0 : _f.findDirectExpressions(Expressions.
|
|
57108
|
+
const withs = ((_f = node.findDirectExpression(Expressions.RaiseWith)) === null || _f === void 0 ? void 0 : _f.findDirectExpressions(Expressions.SimpleSource1)) || [];
|
|
57063
57109
|
const className = ((_g = node.findDirectExpression(Expressions.ClassName)) === null || _g === void 0 ? void 0 : _g.concatTokens()) || "ERROR";
|
|
57064
57110
|
const uniqueName1 = this.uniqueName(node.getFirstToken().getStart(), lowFile.getFilename(), highSyntax);
|
|
57065
57111
|
const uniqueName2 = this.uniqueName(node.getFirstToken().getStart(), lowFile.getFilename(), highSyntax);
|
|
@@ -59147,6 +59193,7 @@ const Structures = __webpack_require__(/*! ../abap/3_structures/structures */ ".
|
|
|
59147
59193
|
const _abap_rule_1 = __webpack_require__(/*! ./_abap_rule */ "./node_modules/@abaplint/core/build/src/rules/_abap_rule.js");
|
|
59148
59194
|
const _basic_rule_config_1 = __webpack_require__(/*! ./_basic_rule_config */ "./node_modules/@abaplint/core/build/src/rules/_basic_rule_config.js");
|
|
59149
59195
|
const _irule_1 = __webpack_require__(/*! ./_irule */ "./node_modules/@abaplint/core/build/src/rules/_irule.js");
|
|
59196
|
+
const _statement_1 = __webpack_require__(/*! ../abap/2_statements/statements/_statement */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/_statement.js");
|
|
59150
59197
|
class EmptyStructureConf extends _basic_rule_config_1.BasicRuleConfig {
|
|
59151
59198
|
constructor() {
|
|
59152
59199
|
super(...arguments);
|
|
@@ -59201,6 +59248,11 @@ class EmptyStructure extends _abap_rule_1.ABAPRule {
|
|
|
59201
59248
|
if (stru === undefined) {
|
|
59202
59249
|
return [];
|
|
59203
59250
|
}
|
|
59251
|
+
for (const statement of file.getStatements()) {
|
|
59252
|
+
if (statement.get() instanceof _statement_1.Unknown) {
|
|
59253
|
+
return []; // contains parser errors
|
|
59254
|
+
}
|
|
59255
|
+
}
|
|
59204
59256
|
const candidates = [];
|
|
59205
59257
|
if (this.getConfig().loop === true) {
|
|
59206
59258
|
candidates.push(...stru.findAllStructuresRecursive(Structures.Loop));
|
|
@@ -60610,6 +60662,7 @@ const _basic_rule_config_1 = __webpack_require__(/*! ./_basic_rule_config */ "./
|
|
|
60610
60662
|
const _abap_rule_1 = __webpack_require__(/*! ./_abap_rule */ "./node_modules/@abaplint/core/build/src/rules/_abap_rule.js");
|
|
60611
60663
|
const _irule_1 = __webpack_require__(/*! ./_irule */ "./node_modules/@abaplint/core/build/src/rules/_irule.js");
|
|
60612
60664
|
const nodes_1 = __webpack_require__(/*! ../abap/nodes */ "./node_modules/@abaplint/core/build/src/abap/nodes/index.js");
|
|
60665
|
+
const _statement_1 = __webpack_require__(/*! ../abap/2_statements/statements/_statement */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/_statement.js");
|
|
60613
60666
|
class IdenticalContentsConf extends _basic_rule_config_1.BasicRuleConfig {
|
|
60614
60667
|
}
|
|
60615
60668
|
exports.IdenticalContentsConf = IdenticalContentsConf;
|
|
@@ -60655,6 +60708,11 @@ WRITE 'world'.`,
|
|
|
60655
60708
|
if (structure === undefined) {
|
|
60656
60709
|
return [];
|
|
60657
60710
|
}
|
|
60711
|
+
for (const statement of file.getStatements()) {
|
|
60712
|
+
if (statement.get() instanceof _statement_1.Unknown) {
|
|
60713
|
+
return []; // contains parser errors
|
|
60714
|
+
}
|
|
60715
|
+
}
|
|
60658
60716
|
for (const i of structure.findAllStructuresRecursive(Structures.If)) {
|
|
60659
60717
|
issues = issues.concat(this.analyzeIf(file, i));
|
|
60660
60718
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/cli",
|
|
3
|
-
"version": "2.105.
|
|
3
|
+
"version": "2.105.20",
|
|
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.105.
|
|
41
|
+
"@abaplint/core": "^2.105.20",
|
|
42
42
|
"@types/chai": "^4.3.11",
|
|
43
43
|
"@types/glob": "^8.1.0",
|
|
44
44
|
"@types/minimist": "^1.2.5",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"mocha": "^10.3.0",
|
|
56
56
|
"progress": "^2.0.3",
|
|
57
57
|
"typescript": "^5.3.3",
|
|
58
|
-
"webpack": "^5.90.
|
|
58
|
+
"webpack": "^5.90.3",
|
|
59
59
|
"webpack-cli": "^5.1.4",
|
|
60
60
|
"xml-js": "^1.6.11"
|
|
61
61
|
},
|