@abaplint/core 2.113.207 → 2.113.209
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/statements/modify_entities.js +6 -4
- package/build/src/abap/2_statements/statements/read_entities.js +5 -2
- package/build/src/abap/5_syntax/basic_types.js +2 -0
- package/build/src/abap/types/method_parameters.js +2 -0
- package/build/src/cds/expressions/cds_aggregate.js +1 -1
- package/build/src/cds/expressions/cds_cardinality.js +4 -2
- package/build/src/cds/expressions/cds_define_custom.js +1 -1
- package/build/src/cds/expressions/cds_prefixed_name.js +2 -1
- package/build/src/registry.js +1 -1
- package/package.json +1 -1
|
@@ -14,15 +14,17 @@ class ModifyEntities {
|
|
|
14
14
|
const create = (0, combi_1.seq)("CREATE", (0, combi_1.opt)(by), "FROM", expressions_1.Source, (0, combi_1.opt)(relating));
|
|
15
15
|
const updateFrom = (0, combi_1.seq)("UPDATE FROM", expressions_1.Source, (0, combi_1.opt)(relating));
|
|
16
16
|
const deleteFrom = (0, combi_1.seq)("DELETE FROM", expressions_1.Source);
|
|
17
|
-
const
|
|
17
|
+
const updateFields = (0, combi_1.seq)("UPDATE", fieldsWith);
|
|
18
|
+
const operation = (0, combi_1.alt)((0, combi_1.seq)("UPDATE SET FIELDS WITH", expressions_1.Source), (0, combi_1.seq)("CREATE SET FIELDS WITH", expressions_1.Source), updateFields, deleteFrom, updateFrom, create, execute, (0, combi_1.seq)("CREATE", (0, combi_1.opt)(by), (0, combi_1.optPrio)("AUTO FILL CID"), (0, combi_1.altPrio)(withh, fieldsWith)));
|
|
18
19
|
const failed = (0, combi_1.seq)("FAILED", expressions_1.Target);
|
|
19
20
|
const result = (0, combi_1.seq)("RESULT", expressions_1.Target);
|
|
20
21
|
const mapped = (0, combi_1.seq)("MAPPED", expressions_1.Target);
|
|
21
22
|
const reported = (0, combi_1.seq)("REPORTED", expressions_1.Target);
|
|
22
23
|
const end = (0, combi_1.optPrio)((0, combi_1.per)(failed, result, mapped, reported));
|
|
23
|
-
const entities = (0, combi_1.seq)((0, combi_1.optPrio)("AUGMENTING"), "ENTITIES OF", expressions_1.NamespaceSimpleName, (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.plusPrio)((0, combi_1.seq)("ENTITY", expressions_1.
|
|
24
|
-
const create2 = (0, combi_1.seq)("CREATE", fieldsWith, "CREATE BY", expressions_1.AssociationName, fieldsWith);
|
|
25
|
-
const
|
|
24
|
+
const entities = (0, combi_1.seq)((0, combi_1.optPrio)("AUGMENTING"), "ENTITIES OF", expressions_1.NamespaceSimpleName, (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.plusPrio)((0, combi_1.seq)("ENTITY", expressions_1.NamespaceSimpleName, (0, combi_1.plus)(operation))));
|
|
25
|
+
const create2 = (0, combi_1.seq)("CREATE", fieldsWith, (0, combi_1.opt)((0, combi_1.seq)("CREATE BY", expressions_1.AssociationName, fieldsWith)));
|
|
26
|
+
const create3 = (0, combi_1.seq)("CREATE BY", expressions_1.AssociationName, fieldsWith);
|
|
27
|
+
const entity = (0, combi_1.seq)("ENTITY", (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.alt)(expressions_1.NamespaceSimpleName, expressions_1.EntityAssociation), (0, combi_1.alt)(execute, create, updateFields, deleteFrom, updateFrom, create2, create3));
|
|
26
28
|
return (0, combi_1.ver)(version_1.Version.v754, (0, combi_1.seq)("MODIFY", (0, combi_1.alt)(entities, entity), end));
|
|
27
29
|
}
|
|
28
30
|
}
|
|
@@ -14,8 +14,11 @@ class ReadEntities {
|
|
|
14
14
|
const failed = (0, combi_1.seq)("FAILED", expressions_1.Target);
|
|
15
15
|
const reported = (0, combi_1.seq)("REPORTED", expressions_1.Target);
|
|
16
16
|
const entity = (0, combi_1.seq)("ENTITY", expressions_1.NamespaceSimpleName, (0, combi_1.opt)((0, combi_1.seq)("BY", expressions_1.AssociationName)), (0, combi_1.alt)(fields, from, all), (0, combi_1.optPrio)(result));
|
|
17
|
-
const s = (0, combi_1.seq)("ENTITIES OF", expressions_1.NamespaceSimpleName, (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.plus)(entity), (0, combi_1.optPrio)((0, combi_1.seq)("LINK", expressions_1.Target)), (0, combi_1.optPrio)(
|
|
18
|
-
const
|
|
17
|
+
const s = (0, combi_1.seq)("ENTITIES OF", expressions_1.NamespaceSimpleName, (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.plus)(entity), (0, combi_1.optPrio)((0, combi_1.seq)("LINK", expressions_1.Target)), (0, combi_1.optPrio)((0, combi_1.per)(failed, reported)));
|
|
18
|
+
const byall = (0, combi_1.seq)("BY", expressions_1.AssociationName, all);
|
|
19
|
+
const by = (0, combi_1.seq)("BY", expressions_1.AssociationName, fields);
|
|
20
|
+
const sub = (0, combi_1.seq)((0, combi_1.alt)(all, fields, from, by, byall), result);
|
|
21
|
+
const single = (0, combi_1.seq)("ENTITY", (0, combi_1.opt)("IN LOCAL MODE"), (0, combi_1.alt)(expressions_1.NamespaceSimpleName, expressions_1.EntityAssociation), (0, combi_1.plus)(sub), (0, combi_1.optPrio)(failed), (0, combi_1.optPrio)(reported));
|
|
19
22
|
return (0, combi_1.ver)(version_1.Version.v754, (0, combi_1.seq)("READ", (0, combi_1.alt)(s, single)));
|
|
20
23
|
}
|
|
21
24
|
}
|
|
@@ -416,6 +416,8 @@ class BasicTypes {
|
|
|
416
416
|
return new Types.TableType(structure, options);
|
|
417
417
|
}
|
|
418
418
|
else if (typename && (text.startsWith("TYPE TABLE FOR CREATE ")
|
|
419
|
+
|| text.startsWith("TYPE TABLE FOR READ ")
|
|
420
|
+
|| text.startsWith("TYPE TABLE FOR DELETE ")
|
|
419
421
|
|| text.startsWith("TYPE TABLE FOR UPDATE "))) {
|
|
420
422
|
const name = typename.concatTokens();
|
|
421
423
|
const type = (_d = this.input.scope.getDDIC().lookupDDLS(name)) === null || _d === void 0 ? void 0 : _d.type;
|
|
@@ -186,6 +186,8 @@ class MethodParameters {
|
|
|
186
186
|
|| concat.includes(" FOR FEATURES ")
|
|
187
187
|
|| concat.includes(" FOR INSTANCE FEATURES ")
|
|
188
188
|
|| concat.includes(" FOR READ ")
|
|
189
|
+
|| concat.includes(" FOR VALIDATION ")
|
|
190
|
+
|| concat.includes(" FOR DETERMINE ")
|
|
189
191
|
|| concat.includes(" FOR LOCK ")
|
|
190
192
|
|| concat.includes(" FOR MODIFY ")) {
|
|
191
193
|
const token = isRap.getFirstToken();
|
|
@@ -5,7 +5,7 @@ const _1 = require(".");
|
|
|
5
5
|
const combi_1 = require("../../abap/2_statements/combi");
|
|
6
6
|
class CDSAggregate extends combi_1.Expression {
|
|
7
7
|
getRunnable() {
|
|
8
|
-
const name = (0, combi_1.seq)(_1.CDSName, (0, combi_1.
|
|
8
|
+
const name = (0, combi_1.seq)(_1.CDSName, (0, combi_1.star)((0, combi_1.seq)(".", _1.CDSName)));
|
|
9
9
|
const value = (0, combi_1.alt)(name, "*", _1.CDSCast, _1.CDSCase, _1.CDSFunction);
|
|
10
10
|
return (0, combi_1.seq)((0, combi_1.alt)("MAX", "MIN", "SUM", "AVG", "COUNT"), "(", (0, combi_1.opt)("DISTINCT"), value, ")");
|
|
11
11
|
}
|
|
@@ -4,8 +4,10 @@ exports.CDSCardinality = void 0;
|
|
|
4
4
|
const combi_1 = require("../../abap/2_statements/combi");
|
|
5
5
|
class CDSCardinality extends combi_1.Expression {
|
|
6
6
|
getRunnable() {
|
|
7
|
-
const
|
|
8
|
-
|
|
7
|
+
const numeric = (0, combi_1.seq)("[", (0, combi_1.alt)("0", "1", "*"), (0, combi_1.opt)((0, combi_1.seq)(".", ".", (0, combi_1.alt)("0", "1", "*"))), "]");
|
|
8
|
+
const num = (0, combi_1.alt)("ONE", "MANY");
|
|
9
|
+
const text = (0, combi_1.seq)("OF", num, "TO", num);
|
|
10
|
+
return (0, combi_1.alt)(numeric, text);
|
|
9
11
|
}
|
|
10
12
|
}
|
|
11
13
|
exports.CDSCardinality = CDSCardinality;
|
|
@@ -9,7 +9,7 @@ class CDSDefineCustom extends combi_1.Expression {
|
|
|
9
9
|
getRunnable() {
|
|
10
10
|
const field = (0, combi_1.seq)((0, combi_1.opt)((0, combi_1.str)("KEY")), cds_name_1.CDSName, ":", cds_type_1.CDSType, ";");
|
|
11
11
|
const compsiOrAssoci = (0, combi_1.seq)(cds_name_1.CDSName, ":", (0, combi_1.alt)(_1.CDSComposition, _1.CDSAssociation), ";");
|
|
12
|
-
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.str)("DEFINE"), (0, combi_1.opt)((0, combi_1.str)("ROOT")), (0, combi_1.str)("CUSTOM ENTITY"), cds_name_1.CDSName, (0, combi_1.str)("{"), (0, combi_1.plus)((0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.alt)(field, compsiOrAssoci))), (0, combi_1.str)("}"), (0, combi_1.opt)(";"));
|
|
12
|
+
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.str)("DEFINE"), (0, combi_1.opt)((0, combi_1.str)("ROOT")), (0, combi_1.str)("CUSTOM ENTITY"), (0, combi_1.opt)(_1.CDSWithParameters), cds_name_1.CDSName, (0, combi_1.str)("{"), (0, combi_1.plus)((0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.alt)(field, compsiOrAssoci))), (0, combi_1.str)("}"), (0, combi_1.opt)(";"));
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
exports.CDSDefineCustom = CDSDefineCustom;
|
|
@@ -4,9 +4,10 @@ exports.CDSPrefixedName = void 0;
|
|
|
4
4
|
const combi_1 = require("../../abap/2_statements/combi");
|
|
5
5
|
const cds_name_1 = require("./cds_name");
|
|
6
6
|
const cds_parameters_1 = require("./cds_parameters");
|
|
7
|
+
const cds_parameters_select_1 = require("./cds_parameters_select");
|
|
7
8
|
class CDSPrefixedName extends combi_1.Expression {
|
|
8
9
|
getRunnable() {
|
|
9
|
-
return (0, combi_1.seq)(cds_name_1.CDSName, (0, combi_1.opt)(cds_parameters_1.CDSParameters), (0, combi_1.star)((0, combi_1.seq)(".", cds_name_1.CDSName, (0, combi_1.opt)(cds_parameters_1.CDSParameters))));
|
|
10
|
+
return (0, combi_1.seq)(cds_name_1.CDSName, (0, combi_1.opt)((0, combi_1.alt)(cds_parameters_1.CDSParameters, cds_parameters_select_1.CDSParametersSelect)), (0, combi_1.star)((0, combi_1.seq)(".", cds_name_1.CDSName, (0, combi_1.opt)(cds_parameters_1.CDSParameters))));
|
|
10
11
|
}
|
|
11
12
|
}
|
|
12
13
|
exports.CDSPrefixedName = CDSPrefixedName;
|
package/build/src/registry.js
CHANGED