@abaplint/core 2.113.197 → 2.113.199
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/assign_source.js +1 -1
- package/build/src/abap/2_statements/expressions/source.js +1 -1
- package/build/src/abap/2_statements/expressions/sql_source_no_space.js +1 -1
- package/build/src/abap/5_syntax/expressions/component_compare.js +2 -2
- package/build/src/abap/5_syntax/expressions/filter_body.js +4 -0
- package/build/src/registry.js +1 -1
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ const simple_source3_1 = require("./simple_source3");
|
|
|
10
10
|
const version_1 = require("../../../version");
|
|
11
11
|
class AssignSource extends combi_1.Expression {
|
|
12
12
|
getRunnable() {
|
|
13
|
-
const component = (0, combi_1.seq)("COMPONENT", (0, combi_1.alt)(simple_source3_1.SimpleSource3, (0, combi_1.ver)(version_1.Version.v740sp02, source_1.Source)), "OF STRUCTURE", source_1.Source);
|
|
13
|
+
const component = (0, combi_1.seq)("COMPONENT", (0, combi_1.alt)(simple_source3_1.SimpleSource3, (0, combi_1.ver)(version_1.Version.v740sp02, source_1.Source, version_1.Version.OpenABAP)), "OF STRUCTURE", source_1.Source);
|
|
14
14
|
const tableField = (0, combi_1.seq)("TABLE FIELD", (0, combi_1.alt)(source_1.Source, dynamic_1.Dynamic));
|
|
15
15
|
const arrow = (0, combi_1.alt)((0, combi_1.tok)(tokens_1.InstanceArrow), (0, combi_1.tok)(tokens_1.StaticArrow));
|
|
16
16
|
const source = (0, combi_1.alt)((0, combi_1.seq)(source_1.Source, (0, combi_1.opt)((0, combi_1.seq)(arrow, dynamic_1.Dynamic))), component, tableField, (0, combi_1.seq)(dynamic_1.Dynamic, (0, combi_1.opt)((0, combi_1.seq)(arrow, (0, combi_1.alt)(field_1.Field, dynamic_1.Dynamic)))));
|
|
@@ -33,7 +33,7 @@ class Source extends combi_1.Expression {
|
|
|
33
33
|
const reff = (0, combi_1.ver)(version_1.Version.v740sp02, (0, combi_1.seq)("REF", _1.TypeNameOrInfer, (0, combi_1.tok)(tokens_1.ParenLeftW), Source, (0, combi_1.optPrio)("OPTIONAL"), rparen), version_1.Version.OpenABAP);
|
|
34
34
|
const exact = (0, combi_1.ver)(version_1.Version.v740sp02, (0, combi_1.seq)("EXACT", _1.TypeNameOrInfer, (0, combi_1.tok)(tokens_1.ParenLeftW), Source, rparen, (0, combi_1.optPrio)(after)));
|
|
35
35
|
const filter = (0, combi_1.ver)(version_1.Version.v740sp08, (0, combi_1.seq)("FILTER", _1.TypeNameOrInfer, (0, combi_1.tok)(tokens_1.ParenLeftW), _1.FilterBody, rparen), version_1.Version.OpenABAP);
|
|
36
|
-
const reduce = (0, combi_1.ver)(version_1.Version.v740sp08, (0, combi_1.seq)("REDUCE", _1.TypeNameOrInfer, (0, combi_1.tok)(tokens_1.ParenLeftW), _1.ReduceBody, rparen, (0, combi_1.optPrio)(after)));
|
|
36
|
+
const reduce = (0, combi_1.ver)(version_1.Version.v740sp08, (0, combi_1.seq)("REDUCE", _1.TypeNameOrInfer, (0, combi_1.tok)(tokens_1.ParenLeftW), _1.ReduceBody, rparen, (0, combi_1.optPrio)(after)), version_1.Version.OpenABAP);
|
|
37
37
|
const prefix1 = (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.WDashW), (0, combi_1.tok)(tokens_1.WPlusW));
|
|
38
38
|
const ret = (0, combi_1.seq)((0, combi_1.starPrio)(prefix1), (0, combi_1.altPrio)(filter, reff, corr, conv, value, cond, exact, swit, reduce, old));
|
|
39
39
|
return ret;
|
|
@@ -8,7 +8,7 @@ const _1 = require(".");
|
|
|
8
8
|
class SQLSourceNoSpace extends combi_1.Expression {
|
|
9
9
|
getRunnable() {
|
|
10
10
|
const paren = (0, combi_1.seq)((0, combi_1.tok)(tokens_1.ParenLeftW), _1.Source, (0, combi_1.tok)(tokens_1.WParenRightW));
|
|
11
|
-
const at = (0, combi_1.ver)(version_1.Version.v740sp05, (0, combi_1.seq)((0, combi_1.tok)(tokens_1.At), (0, combi_1.altPrio)(_1.SimpleSource3, paren)));
|
|
11
|
+
const at = (0, combi_1.ver)(version_1.Version.v740sp05, (0, combi_1.seq)((0, combi_1.tok)(tokens_1.At), (0, combi_1.altPrio)(_1.SimpleSource3, paren)), version_1.Version.OpenABAP);
|
|
12
12
|
return (0, combi_1.alt)(_1.SQLAliasField, _1.SimpleSource3, at);
|
|
13
13
|
}
|
|
14
14
|
}
|
|
@@ -13,9 +13,9 @@ class ComponentCompare {
|
|
|
13
13
|
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, node.getFirstToken(), message));
|
|
14
14
|
return;
|
|
15
15
|
}
|
|
16
|
-
component_chain_1.ComponentChain.runSyntax(type, chain, input);
|
|
16
|
+
const fieldType = component_chain_1.ComponentChain.runSyntax(type, chain, input);
|
|
17
17
|
for (const s of node.findDirectExpressions(Expressions.Source)) {
|
|
18
|
-
source_1.Source.runSyntax(s, input);
|
|
18
|
+
source_1.Source.runSyntax(s, input, fieldType);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
}
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FilterBody = void 0;
|
|
4
4
|
const Expressions = require("../../2_statements/expressions");
|
|
5
5
|
const source_1 = require("./source");
|
|
6
|
+
const component_cond_1 = require("./component_cond");
|
|
7
|
+
const basic_1 = require("../../types/basic");
|
|
6
8
|
class FilterBody {
|
|
7
9
|
static runSyntax(node, input, targetType) {
|
|
8
10
|
if (node === undefined) {
|
|
@@ -17,6 +19,8 @@ class FilterBody {
|
|
|
17
19
|
source_1.Source.runSyntax(s, input);
|
|
18
20
|
}
|
|
19
21
|
}
|
|
22
|
+
const rowType = type instanceof basic_1.TableType ? type.getRowType() : undefined;
|
|
23
|
+
component_cond_1.ComponentCond.runSyntax(node.findDirectExpression(Expressions.ComponentCond), input, rowType);
|
|
20
24
|
return type ? type : targetType;
|
|
21
25
|
}
|
|
22
26
|
}
|
package/build/src/registry.js
CHANGED