@abaplint/core 2.93.96 → 2.93.97
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/abaplint.d.ts +5 -0
- package/build/src/abap/2_statements/expressions/event_handler.js +1 -1
- package/build/src/abap/2_statements/expressions/event_name.js +11 -0
- package/build/src/abap/2_statements/expressions/index.js +1 -0
- package/build/src/abap/2_statements/expressions/sql_join.js +1 -1
- package/build/src/abap/2_statements/statements/events.js +1 -1
- package/build/src/abap/2_statements/statements/raise_event.js +1 -1
- package/build/src/abap/5_syntax/statements/raise_event.js +1 -1
- package/build/src/abap/types/event_definition.js +1 -1
- package/build/src/abap/types/method_parameters.js +1 -1
- package/build/src/registry.js +1 -1
- package/package.json +1 -1
package/build/abaplint.d.ts
CHANGED
|
@@ -1812,6 +1812,10 @@ declare class EventHandler extends Expression {
|
|
|
1812
1812
|
getRunnable(): IStatementRunnable;
|
|
1813
1813
|
}
|
|
1814
1814
|
|
|
1815
|
+
declare class EventName extends Expression {
|
|
1816
|
+
getRunnable(): IStatementRunnable;
|
|
1817
|
+
}
|
|
1818
|
+
|
|
1815
1819
|
declare class Events implements IStatement {
|
|
1816
1820
|
getMatcher(): IStatementRunnable;
|
|
1817
1821
|
}
|
|
@@ -1927,6 +1931,7 @@ declare namespace Expressions {
|
|
|
1927
1931
|
Dynamic,
|
|
1928
1932
|
EntityAssociation,
|
|
1929
1933
|
EventHandler,
|
|
1934
|
+
EventName,
|
|
1930
1935
|
ExceptionName,
|
|
1931
1936
|
FieldAll,
|
|
1932
1937
|
FieldAssignment,
|
|
@@ -5,7 +5,7 @@ const combi_1 = require("../combi");
|
|
|
5
5
|
const _1 = require(".");
|
|
6
6
|
class EventHandler extends combi_1.Expression {
|
|
7
7
|
getRunnable() {
|
|
8
|
-
const event = (0, combi_1.seq)("FOR EVENT", _1.
|
|
8
|
+
const event = (0, combi_1.seq)("FOR EVENT", _1.EventName, "OF", _1.ClassName, (0, combi_1.optPrio)((0, combi_1.seq)("IMPORTING", (0, combi_1.plusPrio)(_1.MethodParamName))));
|
|
9
9
|
return event;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EventName = void 0;
|
|
4
|
+
const combi_1 = require("../combi");
|
|
5
|
+
class EventName extends combi_1.Expression {
|
|
6
|
+
getRunnable() {
|
|
7
|
+
return (0, combi_1.regex)(/^[&_!]?\*?\w*(\/\w+\/)?\d*[a-zA-Z_%\$][\w\*%\$\?#]*(~\w+)?$/);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.EventName = EventName;
|
|
11
|
+
//# sourceMappingURL=event_name.js.map
|
|
@@ -64,6 +64,7 @@ __exportStar(require("./dynamic"), exports);
|
|
|
64
64
|
__exportStar(require("./entity_association"), exports);
|
|
65
65
|
__exportStar(require("./entity_association"), exports);
|
|
66
66
|
__exportStar(require("./event_handler"), exports);
|
|
67
|
+
__exportStar(require("./event_name"), exports);
|
|
67
68
|
__exportStar(require("./exception_name"), exports);
|
|
68
69
|
__exportStar(require("./field_all"), exports);
|
|
69
70
|
__exportStar(require("./field_assignment"), exports);
|
|
@@ -6,7 +6,7 @@ const _1 = require(".");
|
|
|
6
6
|
class SQLJoin extends combi_1.Expression {
|
|
7
7
|
getRunnable() {
|
|
8
8
|
const joinType = (0, combi_1.seq)((0, combi_1.optPrio)((0, combi_1.altPrio)("INNER", "LEFT OUTER", "LEFT")), "JOIN");
|
|
9
|
-
const join = (0, combi_1.seq)(joinType, _1.SQLFromSource, "ON",
|
|
9
|
+
const join = (0, combi_1.seq)(joinType, _1.SQLFromSource, "ON", _1.SQLCond);
|
|
10
10
|
return join;
|
|
11
11
|
}
|
|
12
12
|
}
|
|
@@ -6,7 +6,7 @@ const expressions_1 = require("../expressions");
|
|
|
6
6
|
class Events {
|
|
7
7
|
getMatcher() {
|
|
8
8
|
const exporting = (0, combi_1.seq)("EXPORTING", (0, combi_1.plus)(expressions_1.MethodParamOptional));
|
|
9
|
-
return (0, combi_1.seq)((0, combi_1.alt)("CLASS-EVENTS", "EVENTS"), expressions_1.
|
|
9
|
+
return (0, combi_1.seq)((0, combi_1.alt)("CLASS-EVENTS", "EVENTS"), expressions_1.EventName, (0, combi_1.opt)(exporting));
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
exports.Events = Events;
|
|
@@ -6,7 +6,7 @@ const expressions_1 = require("../expressions");
|
|
|
6
6
|
class RaiseEvent {
|
|
7
7
|
getMatcher() {
|
|
8
8
|
const exporting = (0, combi_1.seq)("EXPORTING", expressions_1.ParameterListS);
|
|
9
|
-
return (0, combi_1.seq)("RAISE EVENT", expressions_1.
|
|
9
|
+
return (0, combi_1.seq)("RAISE EVENT", expressions_1.EventName, (0, combi_1.opt)(exporting));
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
exports.RaiseEvent = RaiseEvent;
|
|
@@ -7,7 +7,7 @@ const _reference_1 = require("../_reference");
|
|
|
7
7
|
class RaiseEvent {
|
|
8
8
|
runSyntax(node, scope, filename) {
|
|
9
9
|
// todo: only possible in classes
|
|
10
|
-
const f = node.findDirectExpression(Expressions.
|
|
10
|
+
const f = node.findDirectExpression(Expressions.EventName);
|
|
11
11
|
if (f === null || f === void 0 ? void 0 : f.concatTokens().includes("~")) {
|
|
12
12
|
const name = f.concatTokens().split("~")[0];
|
|
13
13
|
const idef = scope.findInterfaceDefinition(name);
|
|
@@ -11,7 +11,7 @@ class EventDefinition extends _identifier_1.Identifier {
|
|
|
11
11
|
if (!(node.get() instanceof events_1.Events)) {
|
|
12
12
|
throw new Error("MethodDefinition, expected MethodDef as part of input node");
|
|
13
13
|
}
|
|
14
|
-
const found = node.findFirstExpression(Expressions.
|
|
14
|
+
const found = node.findFirstExpression(Expressions.EventName);
|
|
15
15
|
if (found === undefined) {
|
|
16
16
|
throw new Error("MethodDefinition, expected MethodDef as part of input node");
|
|
17
17
|
}
|
|
@@ -113,7 +113,7 @@ class MethodParameters {
|
|
|
113
113
|
else if (doVoid && ooName) {
|
|
114
114
|
scope.addReference(nameToken, undefined, _reference_1.ReferenceType.ObjectOrientedVoidReference, this.filename, { ooName: ooName.toUpperCase() });
|
|
115
115
|
}
|
|
116
|
-
const eventName = (_b = node.findFirstExpression(Expressions.
|
|
116
|
+
const eventName = (_b = node.findFirstExpression(Expressions.EventName)) === null || _b === void 0 ? void 0 : _b.getFirstToken().getStr();
|
|
117
117
|
const event = new _object_oriented_1.ObjectOriented(scope).searchEvent(def, eventName);
|
|
118
118
|
for (const p of handler.findAllExpressions(Expressions.MethodParamName)) {
|
|
119
119
|
const token = p.getFirstToken();
|
package/build/src/registry.js
CHANGED