@abaplint/cli 2.106.0 → 2.106.1
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 +20 -6
- package/package.json +2 -2
package/build/cli.js
CHANGED
|
@@ -28321,8 +28321,15 @@ class Append {
|
|
|
28321
28321
|
else if (targetType instanceof basic_1.VoidType) {
|
|
28322
28322
|
rowType = targetType;
|
|
28323
28323
|
}
|
|
28324
|
-
|
|
28324
|
+
let sourceType = new source_1.Source().runSyntax(source, scope, filename, rowType);
|
|
28325
28325
|
if (node.findDirectTokenByText("LINES")) {
|
|
28326
|
+
// hmm, checking only the row types are compatible will not check the table type, e.g. sorted or hashed
|
|
28327
|
+
if (sourceType instanceof basic_1.TableType) {
|
|
28328
|
+
sourceType = sourceType.getRowType();
|
|
28329
|
+
}
|
|
28330
|
+
if (targetType instanceof basic_1.TableType) {
|
|
28331
|
+
targetType = targetType.getRowType();
|
|
28332
|
+
}
|
|
28326
28333
|
if (new _type_utils_1.TypeUtils(scope).isAssignable(sourceType, targetType) === false) {
|
|
28327
28334
|
throw new Error("Incompatible types");
|
|
28328
28335
|
}
|
|
@@ -31079,7 +31086,8 @@ class ModifyInternal {
|
|
|
31079
31086
|
new source_1.Source().runSyntax(s, scope, filename);
|
|
31080
31087
|
}
|
|
31081
31088
|
// there is only one
|
|
31082
|
-
const
|
|
31089
|
+
const target = node.findFirstExpression(Expressions.Target);
|
|
31090
|
+
const targetExpression = target;
|
|
31083
31091
|
if (targetExpression) {
|
|
31084
31092
|
// it might be a dynamic target
|
|
31085
31093
|
const targetType = new target_1.Target().runSyntax(targetExpression, scope, filename);
|
|
@@ -31096,13 +31104,19 @@ class ModifyInternal {
|
|
|
31096
31104
|
throw new Error("Table does not have header line");
|
|
31097
31105
|
}
|
|
31098
31106
|
}
|
|
31107
|
+
else if (targetType instanceof basic_1.StructureType) {
|
|
31108
|
+
// it might originate from a TABLES statement
|
|
31109
|
+
if (target.concatTokens().toUpperCase() !== targetType.getDDICName()) {
|
|
31110
|
+
throw new Error("Not an internal table");
|
|
31111
|
+
}
|
|
31112
|
+
}
|
|
31099
31113
|
else {
|
|
31100
31114
|
throw new Error("Not an internal table");
|
|
31101
31115
|
}
|
|
31102
31116
|
}
|
|
31103
|
-
const
|
|
31104
|
-
if (
|
|
31105
|
-
new fstarget_1.FSTarget().runSyntax(
|
|
31117
|
+
const fstarget = node.findDirectExpression(Expressions.FSTarget);
|
|
31118
|
+
if (fstarget) {
|
|
31119
|
+
new fstarget_1.FSTarget().runSyntax(fstarget, scope, filename, undefined);
|
|
31106
31120
|
}
|
|
31107
31121
|
for (const t of node.findDirectExpressions(Expressions.ComponentCond)) {
|
|
31108
31122
|
new component_cond_1.ComponentCond().runSyntax(t, scope, filename);
|
|
@@ -51369,7 +51383,7 @@ class Registry {
|
|
|
51369
51383
|
}
|
|
51370
51384
|
static abaplintVersion() {
|
|
51371
51385
|
// magic, see build script "version.sh"
|
|
51372
|
-
return "2.106.
|
|
51386
|
+
return "2.106.1";
|
|
51373
51387
|
}
|
|
51374
51388
|
getDDICReferences() {
|
|
51375
51389
|
return this.ddicReferences;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/cli",
|
|
3
|
-
"version": "2.106.
|
|
3
|
+
"version": "2.106.1",
|
|
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.106.
|
|
41
|
+
"@abaplint/core": "^2.106.1",
|
|
42
42
|
"@types/chai": "^4.3.12",
|
|
43
43
|
"@types/glob": "^8.1.0",
|
|
44
44
|
"@types/minimist": "^1.2.5",
|