@abaplint/core 2.93.73 → 2.93.75
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/src/abap/2_statements/expressions/select_loop.js +2 -1
- package/build/src/abap/5_syntax/basic_types.js +4 -1
- package/build/src/abap/5_syntax/expressions/source.js +6 -1
- package/build/src/abap/5_syntax/statements/loop.js +1 -0
- package/build/src/registry.js +1 -1
- package/package.json +2 -2
|
@@ -16,7 +16,8 @@ class SelectLoop extends combi_1.Expression {
|
|
|
16
16
|
const bypass = "BYPASSING BUFFER";
|
|
17
17
|
const pack = (0, combi_1.seq)("PACKAGE SIZE", _1.SQLSource);
|
|
18
18
|
const tab = (0, combi_1.seq)(_1.SQLIntoTable, (0, combi_1.alt)(pack, (0, combi_1.seq)(_1.SQLFrom, pack), (0, combi_1.seq)(pack, _1.SQLFrom)));
|
|
19
|
-
const
|
|
19
|
+
const packTab = (0, combi_1.seq)(pack, _1.SQLIntoTable);
|
|
20
|
+
const perm = (0, combi_1.per)(_1.SQLFrom, where, sql_up_to_1.SQLUpTo, sql_order_by_1.SQLOrderBy, sql_having_1.SQLHaving, _1.SQLClient, bypass, _1.SQLGroupBy, _1.SQLForAllEntries, (0, combi_1.alt)(tab, sql_into_structure_1.SQLIntoStructure, packTab));
|
|
20
21
|
const strict = (0, combi_1.seq)(_1.SQLFrom, "FIELDS", sql_field_list_1.SQLFieldList, where, sql_into_structure_1.SQLIntoStructure, sql_up_to_1.SQLUpTo);
|
|
21
22
|
const ret = (0, combi_1.seq)("SELECT", (0, combi_1.altPrio)((0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), sql_field_list_loop_1.SQLFieldListLoop, perm), strict), (0, combi_1.optPrio)(sql_hints_1.SQLHints));
|
|
22
23
|
return ret;
|
|
@@ -359,7 +359,7 @@ class BasicTypes {
|
|
|
359
359
|
const name = typename.concatTokens();
|
|
360
360
|
const type = (_b = this.scope.getDDIC().lookupDDLS(name)) === null || _b === void 0 ? void 0 : _b.type;
|
|
361
361
|
if (type) {
|
|
362
|
-
return new Types.TableType(
|
|
362
|
+
return new Types.TableType(new basic_1.VoidType("RapTodo"), options);
|
|
363
363
|
}
|
|
364
364
|
else if (this.scope.getDDIC().inErrorNamespace(name)) {
|
|
365
365
|
return new Types.UnknownType(`DDLS ${name} not found`);
|
|
@@ -397,6 +397,9 @@ class BasicTypes {
|
|
|
397
397
|
if (e === undefined) {
|
|
398
398
|
e = node.findFirstExpression(Expressions.FormParamType);
|
|
399
399
|
}
|
|
400
|
+
if (e === undefined) {
|
|
401
|
+
e = node.findFirstExpression(Expressions.FieldChain);
|
|
402
|
+
}
|
|
400
403
|
const type = this.resolveLikeName(e, false);
|
|
401
404
|
if (type === undefined) {
|
|
402
405
|
return new Types.UnknownType("Type error, could not resolve \"" + name + "\", parseType");
|
|
@@ -115,7 +115,12 @@ class Source {
|
|
|
115
115
|
else {
|
|
116
116
|
this.addIfInferred(node, scope, filename, foundType);
|
|
117
117
|
}
|
|
118
|
-
|
|
118
|
+
if (foundType && !(foundType instanceof unknown_type_1.UnknownType)) {
|
|
119
|
+
return foundType;
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
return bodyType;
|
|
123
|
+
}
|
|
119
124
|
}
|
|
120
125
|
case "CORRESPONDING":
|
|
121
126
|
{
|
|
@@ -31,6 +31,7 @@ class Loop {
|
|
|
31
31
|
throw new Error("No source type determined");
|
|
32
32
|
}
|
|
33
33
|
else if (sourceType instanceof basic_1.UnknownType) {
|
|
34
|
+
console.dir(sourceType);
|
|
34
35
|
throw new Error("Loop, not a table type, " + sourceType.getError());
|
|
35
36
|
}
|
|
36
37
|
else if (sourceType instanceof basic_1.TableType
|
package/build/src/registry.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/core",
|
|
3
|
-
"version": "2.93.
|
|
3
|
+
"version": "2.93.75",
|
|
4
4
|
"description": "abaplint - Core API",
|
|
5
5
|
"main": "build/src/index.js",
|
|
6
6
|
"typings": "build/abaplint.d.ts",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"@types/mocha": "^10.0.0",
|
|
52
52
|
"@types/node": "^18.11.9",
|
|
53
53
|
"chai": "^4.3.6",
|
|
54
|
-
"eslint": "^8.
|
|
54
|
+
"eslint": "^8.27.0",
|
|
55
55
|
"mocha": "^10.1.0",
|
|
56
56
|
"c8": "^7.12.0",
|
|
57
57
|
"source-map-support": "^0.5.21",
|