@abaplint/transpiler-cli 2.11.39 → 2.11.41
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/bundle.js +101 -5
- package/package.json +3 -3
package/build/bundle.js
CHANGED
|
@@ -4379,7 +4379,7 @@ class For extends combi_1.Expression {
|
|
|
4379
4379
|
const t = (0, combi_1.alt)(_1.TargetField, _1.TargetFieldSymbol);
|
|
4380
4380
|
const groups = (0, combi_1.ver)(version_1.Version.v740sp08, (0, combi_1.seq)("GROUPS", t, "OF", t, "IN", _1.Source, (0, combi_1.optPrio)(groupBy)));
|
|
4381
4381
|
const f = (0, combi_1.seq)("FOR", (0, combi_1.alt)(itera, inn, groups), (0, combi_1.optPrio)(_1.Let));
|
|
4382
|
-
return (0, combi_1.ver)(version_1.Version.v740sp05, f);
|
|
4382
|
+
return (0, combi_1.ver)(version_1.Version.v740sp05, f, version_1.Version.OpenABAP);
|
|
4383
4383
|
}
|
|
4384
4384
|
}
|
|
4385
4385
|
exports.For = For;
|
|
@@ -53791,7 +53791,7 @@ class Registry {
|
|
|
53791
53791
|
}
|
|
53792
53792
|
static abaplintVersion() {
|
|
53793
53793
|
// magic, see build script "version.sh"
|
|
53794
|
-
return "2.113.
|
|
53794
|
+
return "2.113.181";
|
|
53795
53795
|
}
|
|
53796
53796
|
getDDICReferences() {
|
|
53797
53797
|
return this.ddicReferences;
|
|
@@ -79502,6 +79502,7 @@ __exportStar(__webpack_require__(/*! ./field_symbol */ "./node_modules/@abaplint
|
|
|
79502
79502
|
__exportStar(__webpack_require__(/*! ./function_exporting */ "./node_modules/@abaplint/transpiler/build/src/expressions/function_exporting.js"), exports);
|
|
79503
79503
|
__exportStar(__webpack_require__(/*! ./table_expression */ "./node_modules/@abaplint/transpiler/build/src/expressions/table_expression.js"), exports);
|
|
79504
79504
|
__exportStar(__webpack_require__(/*! ./function_parameters */ "./node_modules/@abaplint/transpiler/build/src/expressions/function_parameters.js"), exports);
|
|
79505
|
+
__exportStar(__webpack_require__(/*! ./let */ "./node_modules/@abaplint/transpiler/build/src/expressions/let.js"), exports);
|
|
79505
79506
|
__exportStar(__webpack_require__(/*! ./message_number */ "./node_modules/@abaplint/transpiler/build/src/expressions/message_number.js"), exports);
|
|
79506
79507
|
__exportStar(__webpack_require__(/*! ./method_call_body */ "./node_modules/@abaplint/transpiler/build/src/expressions/method_call_body.js"), exports);
|
|
79507
79508
|
__exportStar(__webpack_require__(/*! ./method_call_chain */ "./node_modules/@abaplint/transpiler/build/src/expressions/method_call_chain.js"), exports);
|
|
@@ -79548,6 +79549,50 @@ __exportStar(__webpack_require__(/*! ./type_name_or_infer */ "./node_modules/@ab
|
|
|
79548
79549
|
|
|
79549
79550
|
/***/ }),
|
|
79550
79551
|
|
|
79552
|
+
/***/ "./node_modules/@abaplint/transpiler/build/src/expressions/let.js":
|
|
79553
|
+
/*!************************************************************************!*\
|
|
79554
|
+
!*** ./node_modules/@abaplint/transpiler/build/src/expressions/let.js ***!
|
|
79555
|
+
\************************************************************************/
|
|
79556
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
79557
|
+
|
|
79558
|
+
"use strict";
|
|
79559
|
+
|
|
79560
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
79561
|
+
exports.LetTranspiler = void 0;
|
|
79562
|
+
const core_1 = __webpack_require__(/*! @abaplint/core */ "./node_modules/@abaplint/core/build/src/index.js");
|
|
79563
|
+
const chunk_1 = __webpack_require__(/*! ../chunk */ "./node_modules/@abaplint/transpiler/build/src/chunk.js");
|
|
79564
|
+
const transpile_types_1 = __webpack_require__(/*! ../transpile_types */ "./node_modules/@abaplint/transpiler/build/src/transpile_types.js");
|
|
79565
|
+
class LetTranspiler {
|
|
79566
|
+
transpile(node, traversal) {
|
|
79567
|
+
if (!(node.get() instanceof core_1.Expressions.Let)) {
|
|
79568
|
+
throw new Error("LetTranspiler, Expected Let");
|
|
79569
|
+
}
|
|
79570
|
+
const ret = new chunk_1.Chunk();
|
|
79571
|
+
for (const def of node.findAllExpressions(core_1.Expressions.InlineFieldDefinition)) {
|
|
79572
|
+
const nameToken = def.findDirectExpression(core_1.Expressions.Field);
|
|
79573
|
+
if (nameToken === undefined) {
|
|
79574
|
+
throw new Error("LetTranspiler, Expected Field");
|
|
79575
|
+
}
|
|
79576
|
+
const name = nameToken?.concatTokens();
|
|
79577
|
+
const scope = traversal.findCurrentScopeByToken(node.getFirstToken());
|
|
79578
|
+
const variable = scope?.findVariable(name);
|
|
79579
|
+
if (variable === undefined) {
|
|
79580
|
+
throw new Error("LetTranspiler, Expected Variable");
|
|
79581
|
+
}
|
|
79582
|
+
ret.appendString(transpile_types_1.TranspileTypes.declare(variable));
|
|
79583
|
+
const source = def.findDirectExpression(core_1.Expressions.Source);
|
|
79584
|
+
if (source) {
|
|
79585
|
+
ret.appendString(name + `.set(${traversal.traverse(source).getCode()});`);
|
|
79586
|
+
}
|
|
79587
|
+
}
|
|
79588
|
+
return ret;
|
|
79589
|
+
}
|
|
79590
|
+
}
|
|
79591
|
+
exports.LetTranspiler = LetTranspiler;
|
|
79592
|
+
//# sourceMappingURL=let.js.map
|
|
79593
|
+
|
|
79594
|
+
/***/ }),
|
|
79595
|
+
|
|
79551
79596
|
/***/ "./node_modules/@abaplint/transpiler/build/src/expressions/message_number.js":
|
|
79552
79597
|
/*!***********************************************************************************!*\
|
|
79553
79598
|
!*** ./node_modules/@abaplint/transpiler/build/src/expressions/message_number.js ***!
|
|
@@ -81626,6 +81671,10 @@ const chunk_1 = __webpack_require__(/*! ../chunk */ "./node_modules/@abaplint/tr
|
|
|
81626
81671
|
const type_name_or_infer_1 = __webpack_require__(/*! ./type_name_or_infer */ "./node_modules/@abaplint/transpiler/build/src/expressions/type_name_or_infer.js");
|
|
81627
81672
|
const value_body_line_1 = __webpack_require__(/*! ./value_body_line */ "./node_modules/@abaplint/transpiler/build/src/expressions/value_body_line.js");
|
|
81628
81673
|
const field_assignment_1 = __webpack_require__(/*! ./field_assignment */ "./node_modules/@abaplint/transpiler/build/src/expressions/field_assignment.js");
|
|
81674
|
+
const statements_1 = __webpack_require__(/*! ../statements */ "./node_modules/@abaplint/transpiler/build/src/statements/index.js");
|
|
81675
|
+
const source_field_symbol_1 = __webpack_require__(/*! ./source_field_symbol */ "./node_modules/@abaplint/transpiler/build/src/expressions/source_field_symbol.js");
|
|
81676
|
+
const transpile_types_1 = __webpack_require__(/*! ../transpile_types */ "./node_modules/@abaplint/transpiler/build/src/transpile_types.js");
|
|
81677
|
+
const let_1 = __webpack_require__(/*! ./let */ "./node_modules/@abaplint/transpiler/build/src/expressions/let.js");
|
|
81629
81678
|
class ValueBodyTranspiler {
|
|
81630
81679
|
transpile(typ, body, traversal) {
|
|
81631
81680
|
if (!(typ.get() instanceof core_1.Expressions.TypeNameOrInfer)) {
|
|
@@ -81633,8 +81682,13 @@ class ValueBodyTranspiler {
|
|
|
81633
81682
|
}
|
|
81634
81683
|
let ret = new chunk_1.Chunk().appendString(new type_name_or_infer_1.TypeNameOrInfer().transpile(typ, traversal).getCode());
|
|
81635
81684
|
const context = new type_name_or_infer_1.TypeNameOrInfer().findType(typ, traversal);
|
|
81636
|
-
|
|
81685
|
+
if (context instanceof core_1.BasicTypes.VoidType || context instanceof core_1.BasicTypes.UnknownType) {
|
|
81686
|
+
// compile option is runtime error, or it failed during the validation step
|
|
81687
|
+
return new chunk_1.Chunk(transpile_types_1.TranspileTypes.toType(context));
|
|
81688
|
+
}
|
|
81689
|
+
let post = "";
|
|
81637
81690
|
let extraFields = "";
|
|
81691
|
+
const hasLines = body.findDirectExpression(core_1.Expressions.ValueBodyLine) !== undefined;
|
|
81638
81692
|
for (const child of body.getChildren()) {
|
|
81639
81693
|
if (child.get() instanceof core_1.Expressions.FieldAssignment && child instanceof core_1.Nodes.ExpressionNode) {
|
|
81640
81694
|
const transpiled = new field_assignment_1.FieldAssignmentTranspiler().transpile(child, traversal).getCode();
|
|
@@ -81651,7 +81705,7 @@ class ValueBodyTranspiler {
|
|
|
81651
81705
|
}
|
|
81652
81706
|
else if (child.get() instanceof core_1.Expressions.ValueBodyLine && child instanceof core_1.Nodes.ExpressionNode) {
|
|
81653
81707
|
if (!(context instanceof core_1.BasicTypes.TableType)) {
|
|
81654
|
-
throw new Error("ValueBodyTranspiler, Expected BasicTypes");
|
|
81708
|
+
throw new Error("ValueBodyTranspiler, Expected BasicTypes, " + body.concatTokens());
|
|
81655
81709
|
}
|
|
81656
81710
|
const rowType = context.getRowType();
|
|
81657
81711
|
ret.appendString(new value_body_line_1.ValueBodyLineTranspiler().transpile(rowType, child, traversal, extraFields).getCode());
|
|
@@ -81660,11 +81714,52 @@ class ValueBodyTranspiler {
|
|
|
81660
81714
|
const source = traversal.traverse(child);
|
|
81661
81715
|
ret.appendString(".set(" + source.getCode() + ".clone())");
|
|
81662
81716
|
}
|
|
81717
|
+
else if (child.get() instanceof core_1.Expressions.For && child instanceof core_1.Nodes.ExpressionNode) {
|
|
81718
|
+
if (["THEN", "UNTIL", "WHILE", "FROM", "TO", "WHERE", "GROUPS"].some(token => child.findDirectTokenByText(token))) {
|
|
81719
|
+
throw new Error("ValueBody FOR todo, " + body.concatTokens());
|
|
81720
|
+
}
|
|
81721
|
+
const loop = child.findDirectExpression(core_1.Expressions.InlineLoopDefinition);
|
|
81722
|
+
if (loop === undefined) {
|
|
81723
|
+
throw new Error("ValueBody FOR todo, " + body.concatTokens());
|
|
81724
|
+
}
|
|
81725
|
+
const base = loop.findDirectExpression(core_1.Expressions.ValueBase);
|
|
81726
|
+
if (base) {
|
|
81727
|
+
throw new Error("ValueBody FOR todo, base, " + body.concatTokens());
|
|
81728
|
+
}
|
|
81729
|
+
let targetDeclare = "";
|
|
81730
|
+
let targetAction = "";
|
|
81731
|
+
const fs = loop.findDirectExpression(core_1.Expressions.TargetFieldSymbol);
|
|
81732
|
+
if (fs) {
|
|
81733
|
+
targetDeclare = new statements_1.FieldSymbolTranspiler().transpile(fs, traversal).getCode();
|
|
81734
|
+
const targetName = new source_field_symbol_1.SourceFieldSymbolTranspiler().transpile(fs, traversal).getCode();
|
|
81735
|
+
targetAction = `${targetName}.assign(unique1);`;
|
|
81736
|
+
}
|
|
81737
|
+
else {
|
|
81738
|
+
const field = traversal.traverse(loop.findDirectExpression(core_1.Expressions.TargetField));
|
|
81739
|
+
if (field === undefined) {
|
|
81740
|
+
throw new Error("ValueBody FOR empty field todo, " + body.concatTokens());
|
|
81741
|
+
}
|
|
81742
|
+
targetAction = `const ${field.getCode()} = unique1.clone();`;
|
|
81743
|
+
}
|
|
81744
|
+
const llet = child.findDirectExpression(core_1.Expressions.Let);
|
|
81745
|
+
if (llet) {
|
|
81746
|
+
targetAction += new let_1.LetTranspiler().transpile(llet, traversal).getCode();
|
|
81747
|
+
}
|
|
81748
|
+
const source = traversal.traverse(loop.findDirectExpression(core_1.Expressions.Source)).getCode();
|
|
81749
|
+
const val = new type_name_or_infer_1.TypeNameOrInfer().transpile(typ, traversal).getCode();
|
|
81750
|
+
ret = new chunk_1.Chunk().appendString(`await (async () => {
|
|
81751
|
+
${targetDeclare}
|
|
81752
|
+
const VAL = ${val};
|
|
81753
|
+
for await (const unique1 of abap.statements.loop(${source})) {
|
|
81754
|
+
${targetAction}
|
|
81755
|
+
VAL`);
|
|
81756
|
+
post = ";\n}\nreturn VAL;\n})()";
|
|
81757
|
+
}
|
|
81663
81758
|
else {
|
|
81664
81759
|
throw new Error("ValueBodyTranspiler, unknown " + child.get().constructor.name + " \"" + child.concatTokens()) + "\"";
|
|
81665
81760
|
}
|
|
81666
81761
|
}
|
|
81667
|
-
return ret;
|
|
81762
|
+
return ret.appendString(post);
|
|
81668
81763
|
}
|
|
81669
81764
|
}
|
|
81670
81765
|
exports.ValueBodyTranspiler = ValueBodyTranspiler;
|
|
@@ -91666,6 +91761,7 @@ exports.config = {
|
|
|
91666
91761
|
"DTEL",
|
|
91667
91762
|
"ENHS",
|
|
91668
91763
|
"ENQU",
|
|
91764
|
+
"HTTP",
|
|
91669
91765
|
"FUGR",
|
|
91670
91766
|
"INTF",
|
|
91671
91767
|
"IWMO",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/transpiler-cli",
|
|
3
|
-
"version": "2.11.
|
|
3
|
+
"version": "2.11.41",
|
|
4
4
|
"description": "Transpiler - Command Line Interface",
|
|
5
5
|
"funding": "https://github.com/sponsors/larshp",
|
|
6
6
|
"bin": {
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"author": "abaplint",
|
|
28
28
|
"license": "MIT",
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@abaplint/core": "^2.113.
|
|
31
|
-
"@abaplint/transpiler": "^2.11.
|
|
30
|
+
"@abaplint/core": "^2.113.181",
|
|
31
|
+
"@abaplint/transpiler": "^2.11.41",
|
|
32
32
|
"@types/glob": "^8.1.0",
|
|
33
33
|
"@types/node": "^24.3.0",
|
|
34
34
|
"@types/progress": "^2.0.7",
|