@abaplint/cli 2.113.127 → 2.113.129
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 +380 -344
- package/package.json +5 -5
package/build/cli.js
CHANGED
|
@@ -4375,7 +4375,7 @@ class Color extends combi_1.Expression {
|
|
|
4375
4375
|
const eq = (0, combi_1.seq)("=", source_1.Source);
|
|
4376
4376
|
const integers = (0, combi_1.altPrio)("1", "2", "3", "4", "5", "6", "7");
|
|
4377
4377
|
const texts = (0, combi_1.altPrio)("COL_BACKGROUND", "COL_HEADING", "COL_NORMAL", "COL_TOTAL", "COL_KEY", "COL_POSITIVE", "COL_NEGATIVE", "COL_GROUP");
|
|
4378
|
-
const value = (0, combi_1.alt)(eq, (0, combi_1.altPrio)("ON", "OFF", (0, combi_1.altPrio)(integers, texts)));
|
|
4378
|
+
const value = (0, combi_1.alt)(eq, (0, combi_1.altPrio)("ON", "OFF", "COLOR OFF", (0, combi_1.altPrio)(integers, texts)));
|
|
4379
4379
|
const toggle = (0, combi_1.altPrio)("ON", "OFF");
|
|
4380
4380
|
return (0, combi_1.seq)("COLOR", (0, combi_1.opt)((0, combi_1.seq)(value, (0, combi_1.opt)(toggle))));
|
|
4381
4381
|
}
|
|
@@ -11819,8 +11819,8 @@ const expressions_1 = __webpack_require__(/*! ../expressions */ "./node_modules/
|
|
|
11819
11819
|
class DataBegin {
|
|
11820
11820
|
getMatcher() {
|
|
11821
11821
|
const occurs = (0, combi_1.seq)("OCCURS", expressions_1.Integer);
|
|
11822
|
-
const common = (0, combi_1.
|
|
11823
|
-
const structure = (0, combi_1.seq)("BEGIN OF", (0, combi_1.altPrio)(common, (0, combi_1.seq)(expressions_1.DefinitionName, (0, combi_1.
|
|
11822
|
+
const common = (0, combi_1.seq)("COMMON PART", (0, combi_1.optPrio)(expressions_1.DefinitionName));
|
|
11823
|
+
const structure = (0, combi_1.seq)("BEGIN OF", (0, combi_1.altPrio)(common, (0, combi_1.seq)(expressions_1.DefinitionName, (0, combi_1.optPrio)("READ-ONLY"), (0, combi_1.optPrio)(occurs))));
|
|
11824
11824
|
return (0, combi_1.seq)("DATA", structure);
|
|
11825
11825
|
}
|
|
11826
11826
|
}
|
|
@@ -19343,7 +19343,7 @@ const Structures = __webpack_require__(/*! ./ */ "./node_modules/@abaplint/core/
|
|
|
19343
19343
|
const _combi_1 = __webpack_require__(/*! ./_combi */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/_combi.js");
|
|
19344
19344
|
class DynproLogic {
|
|
19345
19345
|
getMatcher() {
|
|
19346
|
-
return (0, _combi_1.seq)((0, _combi_1.sub)(Structures.ProcessBeforeOutput), (0, _combi_1.sub)(Structures.ProcessAfterInput), (0, _combi_1.opt)((0, _combi_1.sub)(Structures.ProcessOnValueRequest)), (0, _combi_1.opt)((0, _combi_1.sub)(Structures.ProcessOnHelpRequest)));
|
|
19346
|
+
return (0, _combi_1.seq)((0, _combi_1.sub)(Structures.ProcessBeforeOutput), (0, _combi_1.sub)(Structures.ProcessAfterInput), (0, _combi_1.opt)((0, _combi_1.sub)(Structures.ProcessOnHelpRequest)), (0, _combi_1.opt)((0, _combi_1.sub)(Structures.ProcessOnValueRequest)), (0, _combi_1.opt)((0, _combi_1.sub)(Structures.ProcessOnHelpRequest)));
|
|
19347
19347
|
}
|
|
19348
19348
|
}
|
|
19349
19349
|
exports.DynproLogic = DynproLogic;
|
|
@@ -19366,7 +19366,7 @@ const _combi_1 = __webpack_require__(/*! ./_combi */ "./node_modules/@abaplint/c
|
|
|
19366
19366
|
const chain_1 = __webpack_require__(/*! ./chain */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/chain.js");
|
|
19367
19367
|
class DynproLoop {
|
|
19368
19368
|
getMatcher() {
|
|
19369
|
-
return (0, _combi_1.beginEnd)((0, _combi_1.sta)(Statements.DynproLoop), (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.Module), (0, _combi_1.sub)(chain_1.Chain))), (0, _combi_1.sta)(Statements.EndLoop));
|
|
19369
|
+
return (0, _combi_1.beginEnd)((0, _combi_1.sta)(Statements.DynproLoop), (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.Module), (0, _combi_1.sta)(Statements.Field), (0, _combi_1.sub)(chain_1.Chain))), (0, _combi_1.sta)(Statements.EndLoop));
|
|
19370
19370
|
}
|
|
19371
19371
|
}
|
|
19372
19372
|
exports.DynproLoop = DynproLoop;
|
|
@@ -23722,6 +23722,9 @@ class TypeUtils {
|
|
|
23722
23722
|
else if ((target instanceof basic_1.StringType || target instanceof basic_1.CharacterType)
|
|
23723
23723
|
&& source instanceof basic_1.StructureType
|
|
23724
23724
|
&& this.isCharLike(source)) {
|
|
23725
|
+
if (this.structureContainsString(source) === true) {
|
|
23726
|
+
return false;
|
|
23727
|
+
}
|
|
23725
23728
|
return true;
|
|
23726
23729
|
}
|
|
23727
23730
|
else if (source instanceof basic_1.StructureType) {
|
|
@@ -24740,8 +24743,7 @@ class AttributeChain {
|
|
|
24740
24743
|
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, node.getFirstToken(), "Not an object reference(AttributeChain)"));
|
|
24741
24744
|
return void_type_1.VoidType.get(_syntax_input_1.CheckSyntaxKey);
|
|
24742
24745
|
}
|
|
24743
|
-
const
|
|
24744
|
-
const first = children[0];
|
|
24746
|
+
const first = node.getChildren()[0];
|
|
24745
24747
|
if (!(first.get() instanceof expressions_1.AttributeName)) {
|
|
24746
24748
|
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, node.getFirstToken(), "AttributeChain, unexpected first child"));
|
|
24747
24749
|
return void_type_1.VoidType.get(_syntax_input_1.CheckSyntaxKey);
|
|
@@ -26528,23 +26530,25 @@ class MethodCallChain {
|
|
|
26528
26530
|
static runSyntax(node, input, targetType) {
|
|
26529
26531
|
var _a, _b;
|
|
26530
26532
|
const helper = new _object_oriented_1.ObjectOriented(input.scope);
|
|
26531
|
-
const children = node.getChildren()
|
|
26532
|
-
const first = children
|
|
26533
|
+
const children = node.getChildren();
|
|
26534
|
+
const first = children[0];
|
|
26533
26535
|
if (first === undefined) {
|
|
26534
26536
|
const message = "MethodCallChain, first child expected";
|
|
26535
26537
|
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, node.getFirstToken(), message));
|
|
26536
26538
|
return basic_1.VoidType.get(_syntax_input_1.CheckSyntaxKey);
|
|
26537
26539
|
}
|
|
26540
|
+
let currentIndex = 1;
|
|
26538
26541
|
let context = this.findTop(first, input, targetType);
|
|
26539
26542
|
if (first.get() instanceof Expressions.MethodCall) {
|
|
26540
|
-
|
|
26543
|
+
currentIndex--;
|
|
26541
26544
|
}
|
|
26542
26545
|
let previous = undefined;
|
|
26543
|
-
while (children.length
|
|
26544
|
-
const current = children
|
|
26546
|
+
while (currentIndex <= children.length) {
|
|
26547
|
+
const current = children[currentIndex];
|
|
26545
26548
|
if (current === undefined) {
|
|
26546
26549
|
break;
|
|
26547
26550
|
}
|
|
26551
|
+
currentIndex++;
|
|
26548
26552
|
if (current instanceof nodes_1.ExpressionNode && current.get() instanceof Expressions.MethodCall) {
|
|
26549
26553
|
// for built-in methods set className to undefined
|
|
26550
26554
|
const className = context instanceof basic_1.ObjectReferenceType ? context.getIdentifierName() : undefined;
|
|
@@ -28095,46 +28099,49 @@ class Source {
|
|
|
28095
28099
|
let hexExpected = false;
|
|
28096
28100
|
let hexNext = false;
|
|
28097
28101
|
while (children.length >= 0) {
|
|
28098
|
-
if (first instanceof nodes_1.ExpressionNode
|
|
28099
|
-
|
|
28100
|
-
if (
|
|
28101
|
-
|
|
28102
|
-
|
|
28103
|
-
|
|
28102
|
+
if (first instanceof nodes_1.ExpressionNode) {
|
|
28103
|
+
const get = first.get();
|
|
28104
|
+
if (get instanceof Expressions.MethodCallChain) {
|
|
28105
|
+
context = method_call_chain_1.MethodCallChain.runSyntax(first, input, targetType);
|
|
28106
|
+
if (context === undefined) {
|
|
28107
|
+
const message = "Method has no RETURNING value";
|
|
28108
|
+
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, node.getFirstToken(), message));
|
|
28109
|
+
return basic_1.VoidType.get(_syntax_input_1.CheckSyntaxKey);
|
|
28110
|
+
}
|
|
28104
28111
|
}
|
|
28105
|
-
|
|
28106
|
-
|
|
28107
|
-
context = field_chain_1.FieldChain.runSyntax(first, input, type);
|
|
28108
|
-
}
|
|
28109
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.StringTemplate) {
|
|
28110
|
-
context = string_template_1.StringTemplate.runSyntax(first, input);
|
|
28111
|
-
}
|
|
28112
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.Source) {
|
|
28113
|
-
const found = Source.runSyntax(first, input);
|
|
28114
|
-
context = this.infer(context, found);
|
|
28115
|
-
}
|
|
28116
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.Constant) {
|
|
28117
|
-
const found = constant_1.Constant.runSyntax(first);
|
|
28118
|
-
context = this.infer(context, found);
|
|
28119
|
-
}
|
|
28120
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.Dereference) {
|
|
28121
|
-
context = dereference_1.Dereference.runSyntax(first, context, input);
|
|
28122
|
-
}
|
|
28123
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.ComponentChain) {
|
|
28124
|
-
context = component_chain_1.ComponentChain.runSyntax(context, first, input);
|
|
28125
|
-
}
|
|
28126
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.ArithOperator) {
|
|
28127
|
-
if (first.concatTokens() === "**") {
|
|
28128
|
-
context = new basic_1.FloatType();
|
|
28112
|
+
else if (get instanceof Expressions.FieldChain) {
|
|
28113
|
+
context = field_chain_1.FieldChain.runSyntax(first, input, type);
|
|
28129
28114
|
}
|
|
28130
|
-
|
|
28131
|
-
|
|
28132
|
-
|
|
28133
|
-
|
|
28115
|
+
else if (get instanceof Expressions.StringTemplate) {
|
|
28116
|
+
context = string_template_1.StringTemplate.runSyntax(first, input);
|
|
28117
|
+
}
|
|
28118
|
+
else if (get instanceof Expressions.Source) {
|
|
28119
|
+
const found = Source.runSyntax(first, input);
|
|
28120
|
+
context = this.infer(context, found);
|
|
28121
|
+
}
|
|
28122
|
+
else if (get instanceof Expressions.Constant) {
|
|
28123
|
+
const found = constant_1.Constant.runSyntax(first);
|
|
28124
|
+
context = this.infer(context, found);
|
|
28125
|
+
}
|
|
28126
|
+
else if (get instanceof Expressions.Dereference) {
|
|
28127
|
+
context = dereference_1.Dereference.runSyntax(first, context, input);
|
|
28128
|
+
}
|
|
28129
|
+
else if (get instanceof Expressions.ComponentChain) {
|
|
28130
|
+
context = component_chain_1.ComponentChain.runSyntax(context, first, input);
|
|
28131
|
+
}
|
|
28132
|
+
else if (get instanceof Expressions.ArithOperator) {
|
|
28133
|
+
if (first.concatTokens() === "**") {
|
|
28134
|
+
context = new basic_1.FloatType();
|
|
28135
|
+
}
|
|
28136
|
+
const operator = first.concatTokens().toUpperCase();
|
|
28137
|
+
if (operator === "BIT-OR" || operator === "BIT-AND" || operator === "BIT-XOR") {
|
|
28138
|
+
hexExpected = true;
|
|
28139
|
+
hexNext = true;
|
|
28140
|
+
}
|
|
28141
|
+
}
|
|
28142
|
+
else if (get instanceof Expressions.AttributeChain) {
|
|
28143
|
+
context = attribute_chain_1.AttributeChain.runSyntax(context, first, input, type);
|
|
28134
28144
|
}
|
|
28135
|
-
}
|
|
28136
|
-
else if (first instanceof nodes_1.ExpressionNode && first.get() instanceof Expressions.AttributeChain) {
|
|
28137
|
-
context = attribute_chain_1.AttributeChain.runSyntax(context, first, input, type);
|
|
28138
28145
|
}
|
|
28139
28146
|
if (hexExpected === true) {
|
|
28140
28147
|
if (!(context instanceof basic_1.VoidType)
|
|
@@ -28179,7 +28186,7 @@ class Source {
|
|
|
28179
28186
|
}
|
|
28180
28187
|
static addIfInferred(node, input, inferredType) {
|
|
28181
28188
|
const basic = new basic_types_1.BasicTypes(input);
|
|
28182
|
-
const typeExpression = node.
|
|
28189
|
+
const typeExpression = node.findDirectExpression(Expressions.TypeNameOrInfer);
|
|
28183
28190
|
const typeToken = typeExpression === null || typeExpression === void 0 ? void 0 : typeExpression.getFirstToken();
|
|
28184
28191
|
const typeName = typeToken === null || typeToken === void 0 ? void 0 : typeToken.getStr();
|
|
28185
28192
|
if (typeName === "#" && inferredType && typeToken) {
|
|
@@ -28203,7 +28210,7 @@ class Source {
|
|
|
28203
28210
|
}
|
|
28204
28211
|
static determineType(node, input, targetType) {
|
|
28205
28212
|
const basic = new basic_types_1.BasicTypes(input);
|
|
28206
|
-
const typeExpression = node.
|
|
28213
|
+
const typeExpression = node.findDirectExpression(Expressions.TypeNameOrInfer);
|
|
28207
28214
|
const typeToken = typeExpression === null || typeExpression === void 0 ? void 0 : typeExpression.getFirstToken();
|
|
28208
28215
|
const typeName = typeToken === null || typeToken === void 0 ? void 0 : typeToken.getStr();
|
|
28209
28216
|
if (typeExpression === undefined) {
|
|
@@ -28740,8 +28747,8 @@ class Target {
|
|
|
28740
28747
|
return found.getType();
|
|
28741
28748
|
}
|
|
28742
28749
|
}
|
|
28743
|
-
const children = node.getChildren()
|
|
28744
|
-
const first = children
|
|
28750
|
+
const children = node.getChildren();
|
|
28751
|
+
const first = children[0];
|
|
28745
28752
|
if (first === undefined || !(first instanceof nodes_1.ExpressionNode)) {
|
|
28746
28753
|
return undefined;
|
|
28747
28754
|
}
|
|
@@ -28751,11 +28758,13 @@ class Target {
|
|
|
28751
28758
|
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, node.getFirstToken(), message));
|
|
28752
28759
|
return basic_1.VoidType.get(_syntax_input_1.CheckSyntaxKey);
|
|
28753
28760
|
}
|
|
28754
|
-
|
|
28755
|
-
|
|
28761
|
+
let currentIndex = 1;
|
|
28762
|
+
while (currentIndex <= children.length) {
|
|
28763
|
+
const current = children[currentIndex];
|
|
28756
28764
|
if (current === undefined) {
|
|
28757
28765
|
break;
|
|
28758
28766
|
}
|
|
28767
|
+
currentIndex++;
|
|
28759
28768
|
if (current.get() instanceof tokens_1.Dash) {
|
|
28760
28769
|
if (context instanceof unknown_type_1.UnknownType) {
|
|
28761
28770
|
const message = "Not a structure, type unknown, target";
|
|
@@ -34893,18 +34902,26 @@ exports.Constants = Constants;
|
|
|
34893
34902
|
|
|
34894
34903
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
34895
34904
|
exports.Data = void 0;
|
|
34896
|
-
const
|
|
34897
|
-
const
|
|
34898
|
-
const
|
|
34905
|
+
const _syntax_input_1 = __webpack_require__(/*! ../_syntax_input */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_syntax_input.js");
|
|
34906
|
+
const data_1 = __webpack_require__(/*! ../statements/data */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/statements/data.js");
|
|
34907
|
+
const _reference_1 = __webpack_require__(/*! ../_reference */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_reference.js");
|
|
34899
34908
|
const nodes_1 = __webpack_require__(/*! ../../nodes */ "./node_modules/@abaplint/core/build/src/abap/nodes/index.js");
|
|
34909
|
+
const type_1 = __webpack_require__(/*! ../statements/type */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/statements/type.js");
|
|
34900
34910
|
const _typed_identifier_1 = __webpack_require__(/*! ../../types/_typed_identifier */ "./node_modules/@abaplint/core/build/src/abap/types/_typed_identifier.js");
|
|
34911
|
+
const types_1 = __webpack_require__(/*! ./types */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/structures/types.js");
|
|
34901
34912
|
const Basic = __webpack_require__(/*! ../../types/basic */ "./node_modules/@abaplint/core/build/src/abap/types/basic/index.js");
|
|
34902
|
-
const
|
|
34903
|
-
const
|
|
34904
|
-
const
|
|
34913
|
+
const Expressions = __webpack_require__(/*! ../../2_statements/expressions */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
|
|
34914
|
+
const Statements = __webpack_require__(/*! ../../2_statements/statements */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/index.js");
|
|
34915
|
+
const Structures = __webpack_require__(/*! ../../3_structures/structures */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/index.js");
|
|
34905
34916
|
class Data {
|
|
34906
|
-
runSyntax(node, input) {
|
|
34907
|
-
var _a;
|
|
34917
|
+
static runSyntax(node, input) {
|
|
34918
|
+
var _a, _b;
|
|
34919
|
+
const fouth = (_a = node.getFirstChild()) === null || _a === void 0 ? void 0 : _a.getChildren()[3];
|
|
34920
|
+
const isCommonPart = fouth instanceof nodes_1.TokenNode && fouth.concatTokens() === "COMMON";
|
|
34921
|
+
if (isCommonPart) {
|
|
34922
|
+
this.runCommonPartSyntax(node, input);
|
|
34923
|
+
return undefined;
|
|
34924
|
+
}
|
|
34908
34925
|
const name = node.findFirstExpression(Expressions.DefinitionName).getFirstToken();
|
|
34909
34926
|
let table = false;
|
|
34910
34927
|
const values = {};
|
|
@@ -34921,7 +34938,7 @@ class Data {
|
|
|
34921
34938
|
}
|
|
34922
34939
|
}
|
|
34923
34940
|
else if (c instanceof nodes_1.StructureNode && ctyp instanceof Structures.Data) {
|
|
34924
|
-
const found =
|
|
34941
|
+
const found = Data.runSyntax(c, input);
|
|
34925
34942
|
if (found) {
|
|
34926
34943
|
components.push({ name: found.getName(), type: found.getType() });
|
|
34927
34944
|
}
|
|
@@ -34933,7 +34950,7 @@ class Data {
|
|
|
34933
34950
|
}
|
|
34934
34951
|
else if (c instanceof nodes_1.StatementNode && ctyp instanceof Statements.IncludeType) {
|
|
34935
34952
|
// INCLUDES
|
|
34936
|
-
const typeToken = (
|
|
34953
|
+
const typeToken = (_b = c.findFirstExpression(Expressions.TypeName)) === null || _b === void 0 ? void 0 : _b.getFirstToken();
|
|
34937
34954
|
const typeName = typeToken === null || typeToken === void 0 ? void 0 : typeToken.getStr();
|
|
34938
34955
|
let foundId = input.scope.findType(typeName);
|
|
34939
34956
|
if (foundId === undefined) {
|
|
@@ -34985,6 +35002,35 @@ class Data {
|
|
|
34985
35002
|
return new _typed_identifier_1.TypedIdentifier(name, input.filename, new Basic.StructureType(components), undefined, val);
|
|
34986
35003
|
}
|
|
34987
35004
|
}
|
|
35005
|
+
static runCommonPartSyntax(node, input) {
|
|
35006
|
+
for (const c of node.getChildren()) {
|
|
35007
|
+
const ctyp = c.get();
|
|
35008
|
+
if (c instanceof nodes_1.StatementNode && ctyp instanceof Statements.Data) {
|
|
35009
|
+
const found = new data_1.Data().runSyntax(c, input);
|
|
35010
|
+
if (found) {
|
|
35011
|
+
input.scope.addIdentifier(found);
|
|
35012
|
+
}
|
|
35013
|
+
}
|
|
35014
|
+
else if (c instanceof nodes_1.StructureNode && ctyp instanceof Structures.Data) {
|
|
35015
|
+
const found = Data.runSyntax(c, input);
|
|
35016
|
+
if (found) {
|
|
35017
|
+
input.scope.addIdentifier(found);
|
|
35018
|
+
}
|
|
35019
|
+
}
|
|
35020
|
+
else if (c instanceof nodes_1.StatementNode && ctyp instanceof Statements.Type) {
|
|
35021
|
+
const found = new type_1.Type().runSyntax(c, input);
|
|
35022
|
+
if (found) {
|
|
35023
|
+
input.scope.addIdentifier(found);
|
|
35024
|
+
}
|
|
35025
|
+
}
|
|
35026
|
+
else if (c instanceof nodes_1.StructureNode && ctyp instanceof Structures.Types) {
|
|
35027
|
+
const found = new types_1.Types().runSyntax(c, input);
|
|
35028
|
+
if (found) {
|
|
35029
|
+
input.scope.addIdentifier(found);
|
|
35030
|
+
}
|
|
35031
|
+
}
|
|
35032
|
+
}
|
|
35033
|
+
}
|
|
34988
35034
|
}
|
|
34989
35035
|
exports.Data = Data;
|
|
34990
35036
|
//# sourceMappingURL=data.js.map
|
|
@@ -35666,7 +35712,7 @@ class SyntaxLogic {
|
|
|
35666
35712
|
return true;
|
|
35667
35713
|
}
|
|
35668
35714
|
else if (stru instanceof Structures.Data) {
|
|
35669
|
-
this.scope.addIdentifier(
|
|
35715
|
+
this.scope.addIdentifier(data_1.Data.runSyntax(node, input));
|
|
35670
35716
|
return true;
|
|
35671
35717
|
}
|
|
35672
35718
|
else if (stru instanceof Structures.Statics) {
|
|
@@ -39245,7 +39291,7 @@ class Attributes {
|
|
|
39245
39291
|
const ctyp = c.get();
|
|
39246
39292
|
if (c instanceof nodes_1.StructureNode) {
|
|
39247
39293
|
if (ctyp instanceof Structures.Data) {
|
|
39248
|
-
const found =
|
|
39294
|
+
const found = data_2.Data.runSyntax(c, input);
|
|
39249
39295
|
if (found !== undefined) {
|
|
39250
39296
|
const attr = new class_attribute_1.ClassAttribute(found, visibility, found.getMeta(), found.getValue());
|
|
39251
39297
|
this.instance.push(attr);
|
|
@@ -54308,7 +54354,7 @@ class Registry {
|
|
|
54308
54354
|
}
|
|
54309
54355
|
static abaplintVersion() {
|
|
54310
54356
|
// magic, see build script "version.sh"
|
|
54311
|
-
return "2.113.
|
|
54357
|
+
return "2.113.129";
|
|
54312
54358
|
}
|
|
54313
54359
|
getDDICReferences() {
|
|
54314
54360
|
return this.ddicReferences;
|
|
@@ -60635,7 +60681,8 @@ ${indentation}${uniqueName1}-attr3 = 'IF_T100_DYN_MSG~MSGV3'.
|
|
|
60635
60681
|
${indentation}${uniqueName1}-attr4 = 'IF_T100_DYN_MSG~MSGV4'.\n`;
|
|
60636
60682
|
}
|
|
60637
60683
|
abap += `${indentation}DATA ${uniqueName2} TYPE REF TO ${className}.
|
|
60638
|
-
${indentation}CREATE OBJECT ${uniqueName2}
|
|
60684
|
+
${indentation}CREATE OBJECT ${uniqueName2}.
|
|
60685
|
+
${indentation}${uniqueName2}->if_t100_message~t100key = ${uniqueName1}.\n`;
|
|
60639
60686
|
if (withs.length > 0) {
|
|
60640
60687
|
abap += `${indentation}${uniqueName2}->if_t100_dyn_msg~msgty = 'E'.\n`;
|
|
60641
60688
|
}
|
|
@@ -77950,73 +77997,278 @@ function unescape(str) {
|
|
|
77950
77997
|
|
|
77951
77998
|
/***/ }),
|
|
77952
77999
|
|
|
77953
|
-
/***/ "./node_modules/balanced-match/index.js":
|
|
77954
|
-
|
|
77955
|
-
!*** ./node_modules/balanced-match/index.js ***!
|
|
77956
|
-
|
|
77957
|
-
/***/ ((
|
|
78000
|
+
/***/ "./node_modules/@isaacs/balanced-match/dist/commonjs/index.js":
|
|
78001
|
+
/*!********************************************************************!*\
|
|
78002
|
+
!*** ./node_modules/@isaacs/balanced-match/dist/commonjs/index.js ***!
|
|
78003
|
+
\********************************************************************/
|
|
78004
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
77958
78005
|
|
|
77959
78006
|
"use strict";
|
|
77960
78007
|
|
|
77961
|
-
|
|
77962
|
-
|
|
77963
|
-
|
|
77964
|
-
|
|
77965
|
-
|
|
77966
|
-
|
|
77967
|
-
|
|
77968
|
-
|
|
77969
|
-
|
|
77970
|
-
|
|
77971
|
-
|
|
77972
|
-
|
|
77973
|
-
|
|
77974
|
-
|
|
77975
|
-
|
|
78008
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
78009
|
+
exports.range = exports.balanced = void 0;
|
|
78010
|
+
const balanced = (a, b, str) => {
|
|
78011
|
+
const ma = a instanceof RegExp ? maybeMatch(a, str) : a;
|
|
78012
|
+
const mb = b instanceof RegExp ? maybeMatch(b, str) : b;
|
|
78013
|
+
const r = ma !== null && mb != null && (0, exports.range)(ma, mb, str);
|
|
78014
|
+
return (r && {
|
|
78015
|
+
start: r[0],
|
|
78016
|
+
end: r[1],
|
|
78017
|
+
pre: str.slice(0, r[0]),
|
|
78018
|
+
body: str.slice(r[0] + ma.length, r[1]),
|
|
78019
|
+
post: str.slice(r[1] + mb.length),
|
|
78020
|
+
});
|
|
78021
|
+
};
|
|
78022
|
+
exports.balanced = balanced;
|
|
78023
|
+
const maybeMatch = (reg, str) => {
|
|
78024
|
+
const m = str.match(reg);
|
|
78025
|
+
return m ? m[0] : null;
|
|
78026
|
+
};
|
|
78027
|
+
const range = (a, b, str) => {
|
|
78028
|
+
let begs, beg, left, right = undefined, result;
|
|
78029
|
+
let ai = str.indexOf(a);
|
|
78030
|
+
let bi = str.indexOf(b, ai + 1);
|
|
78031
|
+
let i = ai;
|
|
78032
|
+
if (ai >= 0 && bi > 0) {
|
|
78033
|
+
if (a === b) {
|
|
78034
|
+
return [ai, bi];
|
|
78035
|
+
}
|
|
78036
|
+
begs = [];
|
|
78037
|
+
left = str.length;
|
|
78038
|
+
while (i >= 0 && !result) {
|
|
78039
|
+
if (i === ai) {
|
|
78040
|
+
begs.push(i);
|
|
78041
|
+
ai = str.indexOf(a, i + 1);
|
|
78042
|
+
}
|
|
78043
|
+
else if (begs.length === 1) {
|
|
78044
|
+
const r = begs.pop();
|
|
78045
|
+
if (r !== undefined)
|
|
78046
|
+
result = [r, bi];
|
|
78047
|
+
}
|
|
78048
|
+
else {
|
|
78049
|
+
beg = begs.pop();
|
|
78050
|
+
if (beg !== undefined && beg < left) {
|
|
78051
|
+
left = beg;
|
|
78052
|
+
right = bi;
|
|
78053
|
+
}
|
|
78054
|
+
bi = str.indexOf(b, i + 1);
|
|
78055
|
+
}
|
|
78056
|
+
i = ai < bi && ai >= 0 ? ai : bi;
|
|
78057
|
+
}
|
|
78058
|
+
if (begs.length && right !== undefined) {
|
|
78059
|
+
result = [left, right];
|
|
78060
|
+
}
|
|
78061
|
+
}
|
|
78062
|
+
return result;
|
|
78063
|
+
};
|
|
78064
|
+
exports.range = range;
|
|
78065
|
+
//# sourceMappingURL=index.js.map
|
|
77976
78066
|
|
|
77977
|
-
|
|
77978
|
-
var m = str.match(reg);
|
|
77979
|
-
return m ? m[0] : null;
|
|
77980
|
-
}
|
|
78067
|
+
/***/ }),
|
|
77981
78068
|
|
|
77982
|
-
|
|
77983
|
-
|
|
77984
|
-
|
|
77985
|
-
|
|
77986
|
-
|
|
77987
|
-
var i = ai;
|
|
78069
|
+
/***/ "./node_modules/@isaacs/brace-expansion/dist/commonjs/index.js":
|
|
78070
|
+
/*!*********************************************************************!*\
|
|
78071
|
+
!*** ./node_modules/@isaacs/brace-expansion/dist/commonjs/index.js ***!
|
|
78072
|
+
\*********************************************************************/
|
|
78073
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
77988
78074
|
|
|
77989
|
-
|
|
77990
|
-
begs = [];
|
|
77991
|
-
left = str.length;
|
|
78075
|
+
"use strict";
|
|
77992
78076
|
|
|
77993
|
-
|
|
77994
|
-
|
|
77995
|
-
|
|
77996
|
-
|
|
77997
|
-
|
|
77998
|
-
|
|
77999
|
-
|
|
78000
|
-
|
|
78001
|
-
|
|
78002
|
-
|
|
78003
|
-
|
|
78077
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
78078
|
+
exports.expand = expand;
|
|
78079
|
+
const balanced_match_1 = __webpack_require__(/*! @isaacs/balanced-match */ "./node_modules/@isaacs/balanced-match/dist/commonjs/index.js");
|
|
78080
|
+
const escSlash = '\0SLASH' + Math.random() + '\0';
|
|
78081
|
+
const escOpen = '\0OPEN' + Math.random() + '\0';
|
|
78082
|
+
const escClose = '\0CLOSE' + Math.random() + '\0';
|
|
78083
|
+
const escComma = '\0COMMA' + Math.random() + '\0';
|
|
78084
|
+
const escPeriod = '\0PERIOD' + Math.random() + '\0';
|
|
78085
|
+
const escSlashPattern = new RegExp(escSlash, 'g');
|
|
78086
|
+
const escOpenPattern = new RegExp(escOpen, 'g');
|
|
78087
|
+
const escClosePattern = new RegExp(escClose, 'g');
|
|
78088
|
+
const escCommaPattern = new RegExp(escComma, 'g');
|
|
78089
|
+
const escPeriodPattern = new RegExp(escPeriod, 'g');
|
|
78090
|
+
const slashPattern = /\\\\/g;
|
|
78091
|
+
const openPattern = /\\{/g;
|
|
78092
|
+
const closePattern = /\\}/g;
|
|
78093
|
+
const commaPattern = /\\,/g;
|
|
78094
|
+
const periodPattern = /\\./g;
|
|
78095
|
+
function numeric(str) {
|
|
78096
|
+
return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
|
|
78097
|
+
}
|
|
78098
|
+
function escapeBraces(str) {
|
|
78099
|
+
return str
|
|
78100
|
+
.replace(slashPattern, escSlash)
|
|
78101
|
+
.replace(openPattern, escOpen)
|
|
78102
|
+
.replace(closePattern, escClose)
|
|
78103
|
+
.replace(commaPattern, escComma)
|
|
78104
|
+
.replace(periodPattern, escPeriod);
|
|
78105
|
+
}
|
|
78106
|
+
function unescapeBraces(str) {
|
|
78107
|
+
return str
|
|
78108
|
+
.replace(escSlashPattern, '\\')
|
|
78109
|
+
.replace(escOpenPattern, '{')
|
|
78110
|
+
.replace(escClosePattern, '}')
|
|
78111
|
+
.replace(escCommaPattern, ',')
|
|
78112
|
+
.replace(escPeriodPattern, '.');
|
|
78113
|
+
}
|
|
78114
|
+
/**
|
|
78115
|
+
* Basically just str.split(","), but handling cases
|
|
78116
|
+
* where we have nested braced sections, which should be
|
|
78117
|
+
* treated as individual members, like {a,{b,c},d}
|
|
78118
|
+
*/
|
|
78119
|
+
function parseCommaParts(str) {
|
|
78120
|
+
if (!str) {
|
|
78121
|
+
return [''];
|
|
78122
|
+
}
|
|
78123
|
+
const parts = [];
|
|
78124
|
+
const m = (0, balanced_match_1.balanced)('{', '}', str);
|
|
78125
|
+
if (!m) {
|
|
78126
|
+
return str.split(',');
|
|
78127
|
+
}
|
|
78128
|
+
const { pre, body, post } = m;
|
|
78129
|
+
const p = pre.split(',');
|
|
78130
|
+
p[p.length - 1] += '{' + body + '}';
|
|
78131
|
+
const postParts = parseCommaParts(post);
|
|
78132
|
+
if (post.length) {
|
|
78133
|
+
;
|
|
78134
|
+
p[p.length - 1] += postParts.shift();
|
|
78135
|
+
p.push.apply(p, postParts);
|
|
78136
|
+
}
|
|
78137
|
+
parts.push.apply(parts, p);
|
|
78138
|
+
return parts;
|
|
78139
|
+
}
|
|
78140
|
+
function expand(str) {
|
|
78141
|
+
if (!str) {
|
|
78142
|
+
return [];
|
|
78143
|
+
}
|
|
78144
|
+
// I don't know why Bash 4.3 does this, but it does.
|
|
78145
|
+
// Anything starting with {} will have the first two bytes preserved
|
|
78146
|
+
// but *only* at the top level, so {},a}b will not expand to anything,
|
|
78147
|
+
// but a{},b}c will be expanded to [a}c,abc].
|
|
78148
|
+
// One could argue that this is a bug in Bash, but since the goal of
|
|
78149
|
+
// this module is to match Bash's rules, we escape a leading {}
|
|
78150
|
+
if (str.slice(0, 2) === '{}') {
|
|
78151
|
+
str = '\\{\\}' + str.slice(2);
|
|
78152
|
+
}
|
|
78153
|
+
return expand_(escapeBraces(str), true).map(unescapeBraces);
|
|
78154
|
+
}
|
|
78155
|
+
function embrace(str) {
|
|
78156
|
+
return '{' + str + '}';
|
|
78157
|
+
}
|
|
78158
|
+
function isPadded(el) {
|
|
78159
|
+
return /^-?0\d/.test(el);
|
|
78160
|
+
}
|
|
78161
|
+
function lte(i, y) {
|
|
78162
|
+
return i <= y;
|
|
78163
|
+
}
|
|
78164
|
+
function gte(i, y) {
|
|
78165
|
+
return i >= y;
|
|
78166
|
+
}
|
|
78167
|
+
function expand_(str, isTop) {
|
|
78168
|
+
/** @type {string[]} */
|
|
78169
|
+
const expansions = [];
|
|
78170
|
+
const m = (0, balanced_match_1.balanced)('{', '}', str);
|
|
78171
|
+
if (!m)
|
|
78172
|
+
return [str];
|
|
78173
|
+
// no need to expand pre, since it is guaranteed to be free of brace-sets
|
|
78174
|
+
const pre = m.pre;
|
|
78175
|
+
const post = m.post.length ? expand_(m.post, false) : [''];
|
|
78176
|
+
if (/\$$/.test(m.pre)) {
|
|
78177
|
+
for (let k = 0; k < post.length; k++) {
|
|
78178
|
+
const expansion = pre + '{' + m.body + '}' + post[k];
|
|
78179
|
+
expansions.push(expansion);
|
|
78004
78180
|
}
|
|
78005
|
-
|
|
78006
|
-
bi = str.indexOf(b, i + 1);
|
|
78007
|
-
}
|
|
78008
|
-
|
|
78009
|
-
i = ai < bi && ai >= 0 ? ai : bi;
|
|
78010
78181
|
}
|
|
78011
|
-
|
|
78012
|
-
|
|
78013
|
-
|
|
78182
|
+
else {
|
|
78183
|
+
const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
|
|
78184
|
+
const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
|
|
78185
|
+
const isSequence = isNumericSequence || isAlphaSequence;
|
|
78186
|
+
const isOptions = m.body.indexOf(',') >= 0;
|
|
78187
|
+
if (!isSequence && !isOptions) {
|
|
78188
|
+
// {a},b}
|
|
78189
|
+
if (m.post.match(/,(?!,).*\}/)) {
|
|
78190
|
+
str = m.pre + '{' + m.body + escClose + m.post;
|
|
78191
|
+
return expand_(str);
|
|
78192
|
+
}
|
|
78193
|
+
return [str];
|
|
78194
|
+
}
|
|
78195
|
+
let n;
|
|
78196
|
+
if (isSequence) {
|
|
78197
|
+
n = m.body.split(/\.\./);
|
|
78198
|
+
}
|
|
78199
|
+
else {
|
|
78200
|
+
n = parseCommaParts(m.body);
|
|
78201
|
+
if (n.length === 1 && n[0] !== undefined) {
|
|
78202
|
+
// x{{a,b}}y ==> x{a}y x{b}y
|
|
78203
|
+
n = expand_(n[0], false).map(embrace);
|
|
78204
|
+
//XXX is this necessary? Can't seem to hit it in tests.
|
|
78205
|
+
/* c8 ignore start */
|
|
78206
|
+
if (n.length === 1) {
|
|
78207
|
+
return post.map(p => m.pre + n[0] + p);
|
|
78208
|
+
}
|
|
78209
|
+
/* c8 ignore stop */
|
|
78210
|
+
}
|
|
78211
|
+
}
|
|
78212
|
+
// at this point, n is the parts, and we know it's not a comma set
|
|
78213
|
+
// with a single entry.
|
|
78214
|
+
let N;
|
|
78215
|
+
if (isSequence && n[0] !== undefined && n[1] !== undefined) {
|
|
78216
|
+
const x = numeric(n[0]);
|
|
78217
|
+
const y = numeric(n[1]);
|
|
78218
|
+
const width = Math.max(n[0].length, n[1].length);
|
|
78219
|
+
let incr = n.length === 3 && n[2] !== undefined ? Math.abs(numeric(n[2])) : 1;
|
|
78220
|
+
let test = lte;
|
|
78221
|
+
const reverse = y < x;
|
|
78222
|
+
if (reverse) {
|
|
78223
|
+
incr *= -1;
|
|
78224
|
+
test = gte;
|
|
78225
|
+
}
|
|
78226
|
+
const pad = n.some(isPadded);
|
|
78227
|
+
N = [];
|
|
78228
|
+
for (let i = x; test(i, y); i += incr) {
|
|
78229
|
+
let c;
|
|
78230
|
+
if (isAlphaSequence) {
|
|
78231
|
+
c = String.fromCharCode(i);
|
|
78232
|
+
if (c === '\\') {
|
|
78233
|
+
c = '';
|
|
78234
|
+
}
|
|
78235
|
+
}
|
|
78236
|
+
else {
|
|
78237
|
+
c = String(i);
|
|
78238
|
+
if (pad) {
|
|
78239
|
+
const need = width - c.length;
|
|
78240
|
+
if (need > 0) {
|
|
78241
|
+
const z = new Array(need + 1).join('0');
|
|
78242
|
+
if (i < 0) {
|
|
78243
|
+
c = '-' + z + c.slice(1);
|
|
78244
|
+
}
|
|
78245
|
+
else {
|
|
78246
|
+
c = z + c;
|
|
78247
|
+
}
|
|
78248
|
+
}
|
|
78249
|
+
}
|
|
78250
|
+
}
|
|
78251
|
+
N.push(c);
|
|
78252
|
+
}
|
|
78253
|
+
}
|
|
78254
|
+
else {
|
|
78255
|
+
N = [];
|
|
78256
|
+
for (let j = 0; j < n.length; j++) {
|
|
78257
|
+
N.push.apply(N, expand_(n[j], false));
|
|
78258
|
+
}
|
|
78259
|
+
}
|
|
78260
|
+
for (let j = 0; j < N.length; j++) {
|
|
78261
|
+
for (let k = 0; k < post.length; k++) {
|
|
78262
|
+
const expansion = pre + N[j] + post[k];
|
|
78263
|
+
if (!isTop || isSequence || expansion) {
|
|
78264
|
+
expansions.push(expansion);
|
|
78265
|
+
}
|
|
78266
|
+
}
|
|
78267
|
+
}
|
|
78014
78268
|
}
|
|
78015
|
-
|
|
78016
|
-
|
|
78017
|
-
return result;
|
|
78269
|
+
return expansions;
|
|
78018
78270
|
}
|
|
78019
|
-
|
|
78271
|
+
//# sourceMappingURL=index.js.map
|
|
78020
78272
|
|
|
78021
78273
|
/***/ }),
|
|
78022
78274
|
|
|
@@ -80197,219 +80449,6 @@ class GlobStream extends GlobUtil {
|
|
|
80197
80449
|
exports.GlobStream = GlobStream;
|
|
80198
80450
|
//# sourceMappingURL=walker.js.map
|
|
80199
80451
|
|
|
80200
|
-
/***/ }),
|
|
80201
|
-
|
|
80202
|
-
/***/ "./node_modules/glob/node_modules/brace-expansion/index.js":
|
|
80203
|
-
/*!*****************************************************************!*\
|
|
80204
|
-
!*** ./node_modules/glob/node_modules/brace-expansion/index.js ***!
|
|
80205
|
-
\*****************************************************************/
|
|
80206
|
-
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
|
80207
|
-
|
|
80208
|
-
var balanced = __webpack_require__(/*! balanced-match */ "./node_modules/balanced-match/index.js");
|
|
80209
|
-
|
|
80210
|
-
module.exports = expandTop;
|
|
80211
|
-
|
|
80212
|
-
var escSlash = '\0SLASH'+Math.random()+'\0';
|
|
80213
|
-
var escOpen = '\0OPEN'+Math.random()+'\0';
|
|
80214
|
-
var escClose = '\0CLOSE'+Math.random()+'\0';
|
|
80215
|
-
var escComma = '\0COMMA'+Math.random()+'\0';
|
|
80216
|
-
var escPeriod = '\0PERIOD'+Math.random()+'\0';
|
|
80217
|
-
|
|
80218
|
-
function numeric(str) {
|
|
80219
|
-
return parseInt(str, 10) == str
|
|
80220
|
-
? parseInt(str, 10)
|
|
80221
|
-
: str.charCodeAt(0);
|
|
80222
|
-
}
|
|
80223
|
-
|
|
80224
|
-
function escapeBraces(str) {
|
|
80225
|
-
return str.split('\\\\').join(escSlash)
|
|
80226
|
-
.split('\\{').join(escOpen)
|
|
80227
|
-
.split('\\}').join(escClose)
|
|
80228
|
-
.split('\\,').join(escComma)
|
|
80229
|
-
.split('\\.').join(escPeriod);
|
|
80230
|
-
}
|
|
80231
|
-
|
|
80232
|
-
function unescapeBraces(str) {
|
|
80233
|
-
return str.split(escSlash).join('\\')
|
|
80234
|
-
.split(escOpen).join('{')
|
|
80235
|
-
.split(escClose).join('}')
|
|
80236
|
-
.split(escComma).join(',')
|
|
80237
|
-
.split(escPeriod).join('.');
|
|
80238
|
-
}
|
|
80239
|
-
|
|
80240
|
-
|
|
80241
|
-
// Basically just str.split(","), but handling cases
|
|
80242
|
-
// where we have nested braced sections, which should be
|
|
80243
|
-
// treated as individual members, like {a,{b,c},d}
|
|
80244
|
-
function parseCommaParts(str) {
|
|
80245
|
-
if (!str)
|
|
80246
|
-
return [''];
|
|
80247
|
-
|
|
80248
|
-
var parts = [];
|
|
80249
|
-
var m = balanced('{', '}', str);
|
|
80250
|
-
|
|
80251
|
-
if (!m)
|
|
80252
|
-
return str.split(',');
|
|
80253
|
-
|
|
80254
|
-
var pre = m.pre;
|
|
80255
|
-
var body = m.body;
|
|
80256
|
-
var post = m.post;
|
|
80257
|
-
var p = pre.split(',');
|
|
80258
|
-
|
|
80259
|
-
p[p.length-1] += '{' + body + '}';
|
|
80260
|
-
var postParts = parseCommaParts(post);
|
|
80261
|
-
if (post.length) {
|
|
80262
|
-
p[p.length-1] += postParts.shift();
|
|
80263
|
-
p.push.apply(p, postParts);
|
|
80264
|
-
}
|
|
80265
|
-
|
|
80266
|
-
parts.push.apply(parts, p);
|
|
80267
|
-
|
|
80268
|
-
return parts;
|
|
80269
|
-
}
|
|
80270
|
-
|
|
80271
|
-
function expandTop(str) {
|
|
80272
|
-
if (!str)
|
|
80273
|
-
return [];
|
|
80274
|
-
|
|
80275
|
-
// I don't know why Bash 4.3 does this, but it does.
|
|
80276
|
-
// Anything starting with {} will have the first two bytes preserved
|
|
80277
|
-
// but *only* at the top level, so {},a}b will not expand to anything,
|
|
80278
|
-
// but a{},b}c will be expanded to [a}c,abc].
|
|
80279
|
-
// One could argue that this is a bug in Bash, but since the goal of
|
|
80280
|
-
// this module is to match Bash's rules, we escape a leading {}
|
|
80281
|
-
if (str.substr(0, 2) === '{}') {
|
|
80282
|
-
str = '\\{\\}' + str.substr(2);
|
|
80283
|
-
}
|
|
80284
|
-
|
|
80285
|
-
return expand(escapeBraces(str), true).map(unescapeBraces);
|
|
80286
|
-
}
|
|
80287
|
-
|
|
80288
|
-
function embrace(str) {
|
|
80289
|
-
return '{' + str + '}';
|
|
80290
|
-
}
|
|
80291
|
-
function isPadded(el) {
|
|
80292
|
-
return /^-?0\d/.test(el);
|
|
80293
|
-
}
|
|
80294
|
-
|
|
80295
|
-
function lte(i, y) {
|
|
80296
|
-
return i <= y;
|
|
80297
|
-
}
|
|
80298
|
-
function gte(i, y) {
|
|
80299
|
-
return i >= y;
|
|
80300
|
-
}
|
|
80301
|
-
|
|
80302
|
-
function expand(str, isTop) {
|
|
80303
|
-
var expansions = [];
|
|
80304
|
-
|
|
80305
|
-
var m = balanced('{', '}', str);
|
|
80306
|
-
if (!m) return [str];
|
|
80307
|
-
|
|
80308
|
-
// no need to expand pre, since it is guaranteed to be free of brace-sets
|
|
80309
|
-
var pre = m.pre;
|
|
80310
|
-
var post = m.post.length
|
|
80311
|
-
? expand(m.post, false)
|
|
80312
|
-
: [''];
|
|
80313
|
-
|
|
80314
|
-
if (/\$$/.test(m.pre)) {
|
|
80315
|
-
for (var k = 0; k < post.length; k++) {
|
|
80316
|
-
var expansion = pre+ '{' + m.body + '}' + post[k];
|
|
80317
|
-
expansions.push(expansion);
|
|
80318
|
-
}
|
|
80319
|
-
} else {
|
|
80320
|
-
var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
|
|
80321
|
-
var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
|
|
80322
|
-
var isSequence = isNumericSequence || isAlphaSequence;
|
|
80323
|
-
var isOptions = m.body.indexOf(',') >= 0;
|
|
80324
|
-
if (!isSequence && !isOptions) {
|
|
80325
|
-
// {a},b}
|
|
80326
|
-
if (m.post.match(/,.*\}/)) {
|
|
80327
|
-
str = m.pre + '{' + m.body + escClose + m.post;
|
|
80328
|
-
return expand(str);
|
|
80329
|
-
}
|
|
80330
|
-
return [str];
|
|
80331
|
-
}
|
|
80332
|
-
|
|
80333
|
-
var n;
|
|
80334
|
-
if (isSequence) {
|
|
80335
|
-
n = m.body.split(/\.\./);
|
|
80336
|
-
} else {
|
|
80337
|
-
n = parseCommaParts(m.body);
|
|
80338
|
-
if (n.length === 1) {
|
|
80339
|
-
// x{{a,b}}y ==> x{a}y x{b}y
|
|
80340
|
-
n = expand(n[0], false).map(embrace);
|
|
80341
|
-
if (n.length === 1) {
|
|
80342
|
-
return post.map(function(p) {
|
|
80343
|
-
return m.pre + n[0] + p;
|
|
80344
|
-
});
|
|
80345
|
-
}
|
|
80346
|
-
}
|
|
80347
|
-
}
|
|
80348
|
-
|
|
80349
|
-
// at this point, n is the parts, and we know it's not a comma set
|
|
80350
|
-
// with a single entry.
|
|
80351
|
-
var N;
|
|
80352
|
-
|
|
80353
|
-
if (isSequence) {
|
|
80354
|
-
var x = numeric(n[0]);
|
|
80355
|
-
var y = numeric(n[1]);
|
|
80356
|
-
var width = Math.max(n[0].length, n[1].length)
|
|
80357
|
-
var incr = n.length == 3
|
|
80358
|
-
? Math.abs(numeric(n[2]))
|
|
80359
|
-
: 1;
|
|
80360
|
-
var test = lte;
|
|
80361
|
-
var reverse = y < x;
|
|
80362
|
-
if (reverse) {
|
|
80363
|
-
incr *= -1;
|
|
80364
|
-
test = gte;
|
|
80365
|
-
}
|
|
80366
|
-
var pad = n.some(isPadded);
|
|
80367
|
-
|
|
80368
|
-
N = [];
|
|
80369
|
-
|
|
80370
|
-
for (var i = x; test(i, y); i += incr) {
|
|
80371
|
-
var c;
|
|
80372
|
-
if (isAlphaSequence) {
|
|
80373
|
-
c = String.fromCharCode(i);
|
|
80374
|
-
if (c === '\\')
|
|
80375
|
-
c = '';
|
|
80376
|
-
} else {
|
|
80377
|
-
c = String(i);
|
|
80378
|
-
if (pad) {
|
|
80379
|
-
var need = width - c.length;
|
|
80380
|
-
if (need > 0) {
|
|
80381
|
-
var z = new Array(need + 1).join('0');
|
|
80382
|
-
if (i < 0)
|
|
80383
|
-
c = '-' + z + c.slice(1);
|
|
80384
|
-
else
|
|
80385
|
-
c = z + c;
|
|
80386
|
-
}
|
|
80387
|
-
}
|
|
80388
|
-
}
|
|
80389
|
-
N.push(c);
|
|
80390
|
-
}
|
|
80391
|
-
} else {
|
|
80392
|
-
N = [];
|
|
80393
|
-
|
|
80394
|
-
for (var j = 0; j < n.length; j++) {
|
|
80395
|
-
N.push.apply(N, expand(n[j], false));
|
|
80396
|
-
}
|
|
80397
|
-
}
|
|
80398
|
-
|
|
80399
|
-
for (var j = 0; j < N.length; j++) {
|
|
80400
|
-
for (var k = 0; k < post.length; k++) {
|
|
80401
|
-
var expansion = pre + N[j] + post[k];
|
|
80402
|
-
if (!isTop || isSequence || expansion)
|
|
80403
|
-
expansions.push(expansion);
|
|
80404
|
-
}
|
|
80405
|
-
}
|
|
80406
|
-
}
|
|
80407
|
-
|
|
80408
|
-
return expansions;
|
|
80409
|
-
}
|
|
80410
|
-
|
|
80411
|
-
|
|
80412
|
-
|
|
80413
80452
|
/***/ }),
|
|
80414
80453
|
|
|
80415
80454
|
/***/ "./node_modules/glob/node_modules/lru-cache/dist/commonjs/index.js":
|
|
@@ -82810,16 +82849,13 @@ exports.escape = escape;
|
|
|
82810
82849
|
/*!*************************************************************************!*\
|
|
82811
82850
|
!*** ./node_modules/glob/node_modules/minimatch/dist/commonjs/index.js ***!
|
|
82812
82851
|
\*************************************************************************/
|
|
82813
|
-
/***/ (
|
|
82852
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
82814
82853
|
|
|
82815
82854
|
"use strict";
|
|
82816
82855
|
|
|
82817
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
82818
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
82819
|
-
};
|
|
82820
82856
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
82821
82857
|
exports.unescape = exports.escape = exports.AST = exports.Minimatch = exports.match = exports.makeRe = exports.braceExpand = exports.defaults = exports.filter = exports.GLOBSTAR = exports.sep = exports.minimatch = void 0;
|
|
82822
|
-
const brace_expansion_1 =
|
|
82858
|
+
const brace_expansion_1 = __webpack_require__(/*! @isaacs/brace-expansion */ "./node_modules/@isaacs/brace-expansion/dist/commonjs/index.js");
|
|
82823
82859
|
const assert_valid_pattern_js_1 = __webpack_require__(/*! ./assert-valid-pattern.js */ "./node_modules/glob/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js");
|
|
82824
82860
|
const ast_js_1 = __webpack_require__(/*! ./ast.js */ "./node_modules/glob/node_modules/minimatch/dist/commonjs/ast.js");
|
|
82825
82861
|
const escape_js_1 = __webpack_require__(/*! ./escape.js */ "./node_modules/glob/node_modules/minimatch/dist/commonjs/escape.js");
|
|
@@ -82972,7 +83008,7 @@ const braceExpand = (pattern, options = {}) => {
|
|
|
82972
83008
|
// shortcut. no need to expand.
|
|
82973
83009
|
return [pattern];
|
|
82974
83010
|
}
|
|
82975
|
-
return (0, brace_expansion_1.
|
|
83011
|
+
return (0, brace_expansion_1.expand)(pattern);
|
|
82976
83012
|
};
|
|
82977
83013
|
exports.braceExpand = braceExpand;
|
|
82978
83014
|
exports.minimatch.braceExpand = exports.braceExpand;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/cli",
|
|
3
|
-
"version": "2.113.
|
|
3
|
+
"version": "2.113.129",
|
|
4
4
|
"description": "abaplint - Command Line Interface",
|
|
5
5
|
"funding": "https://github.com/sponsors/larshp",
|
|
6
6
|
"bin": {
|
|
@@ -38,17 +38,17 @@
|
|
|
38
38
|
},
|
|
39
39
|
"homepage": "https://abaplint.org",
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@abaplint/core": "^2.113.
|
|
41
|
+
"@abaplint/core": "^2.113.129",
|
|
42
42
|
"@types/chai": "^4.3.20",
|
|
43
43
|
"@types/minimist": "^1.2.5",
|
|
44
44
|
"@types/mocha": "^10.0.10",
|
|
45
|
-
"@types/node": "^24.0.
|
|
45
|
+
"@types/node": "^24.0.3",
|
|
46
46
|
"@types/progress": "^2.0.7",
|
|
47
47
|
"chai": "^4.5.0",
|
|
48
48
|
"p-limit": "^3.1.0",
|
|
49
49
|
"chalk": "^5.4.1",
|
|
50
|
-
"eslint": "^9.
|
|
51
|
-
"glob": "^11.0.
|
|
50
|
+
"eslint": "^9.29.0",
|
|
51
|
+
"glob": "^11.0.3",
|
|
52
52
|
"json5": "^2.2.3",
|
|
53
53
|
"memfs": "^4.17.2",
|
|
54
54
|
"minimist": "^1.2.8",
|