@abaplint/transpiler 2.12.5 → 2.12.7
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.
|
@@ -109,6 +109,15 @@ class MethodSourceTranspiler {
|
|
|
109
109
|
}
|
|
110
110
|
call += traversal.traverse(child).getCode();
|
|
111
111
|
}
|
|
112
|
+
else if (child.get() instanceof core_1.Expressions.SourceFieldSymbol) {
|
|
113
|
+
call += traversal.traverse(child).getCode();
|
|
114
|
+
}
|
|
115
|
+
else if (child.get() instanceof core_1.Expressions.ComponentName) {
|
|
116
|
+
call += `["${child.concatTokens().toLowerCase()}"]`;
|
|
117
|
+
}
|
|
118
|
+
else if (child.get() instanceof core_1.Tokens.Dash) {
|
|
119
|
+
call += '.get()';
|
|
120
|
+
}
|
|
112
121
|
else {
|
|
113
122
|
ret.appendString("MethodSourceTranspiler-" + child.get().constructor.name + "-todo");
|
|
114
123
|
}
|
|
@@ -24,7 +24,7 @@ static INTERNAL_TYPE = 'CLAS';
|
|
|
24
24
|
static INTERNAL_NAME = '${traversal.buildInternalName(token.getStr(), def)}';
|
|
25
25
|
static IMPLEMENTED_INTERFACES = [${this.findImplementedByClass(traversal, def, scope).map(e => `"` + e.toUpperCase() + `"`).join(",")}];
|
|
26
26
|
static ATTRIBUTES = {${Array.from(traversal.buildAttributes(def, scope)).join(",\n")}};
|
|
27
|
-
static METHODS = {${traversal.buildMethods(def
|
|
27
|
+
static METHODS = {${traversal.buildMethods(def).join(",\n")}};`, node, traversal);
|
|
28
28
|
}
|
|
29
29
|
findImplementedInterface(traversal, def, scope) {
|
|
30
30
|
if (def === undefined || scope === undefined) {
|
|
@@ -21,7 +21,7 @@ class InterfaceTranspiler {
|
|
|
21
21
|
ret += `static INTERNAL_TYPE = 'INTF';\n`;
|
|
22
22
|
ret += `static INTERNAL_NAME = '${traversal.buildInternalName(token.getStr(), def)}';\n`;
|
|
23
23
|
ret += `static ATTRIBUTES = {${Array.from(traversal.buildAttributes(def, scope)).join(",\n")}};\n`;
|
|
24
|
-
ret += `static METHODS = {${traversal.buildMethods(def
|
|
24
|
+
ret += `static METHODS = {${traversal.buildMethods(def).join(",\n")}};\n`;
|
|
25
25
|
// todo, add IMPLEMENTED_INTERFACES ?
|
|
26
26
|
}
|
|
27
27
|
else if (c instanceof abaplint.Nodes.StatementNode && c.get() instanceof abaplint.Statements.EndInterface) {
|
package/build/src/traversal.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ export declare class Traversal {
|
|
|
26
26
|
private isClassAttribute;
|
|
27
27
|
prefixAndName(t: abaplint.Token, filename?: string): string;
|
|
28
28
|
private isStaticClassAttribute;
|
|
29
|
-
buildMethods(def: abaplint.IClassDefinition | abaplint.IInterfaceDefinition | undefined
|
|
29
|
+
buildMethods(def: abaplint.IClassDefinition | abaplint.IInterfaceDefinition | undefined): string[];
|
|
30
30
|
private mapVisibility;
|
|
31
31
|
buildAttributes(def: abaplint.IClassDefinition | abaplint.IInterfaceDefinition | undefined, scope: abaplint.ISpaghettiScopeNode | undefined, prefix?: string): Set<string>;
|
|
32
32
|
isBuiltinMethod(token: abaplint.Token): boolean;
|
package/build/src/traversal.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/transpiler",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.7",
|
|
4
4
|
"description": "Transpiler",
|
|
5
5
|
"main": "build/src/index.js",
|
|
6
6
|
"typings": "build/src/index.d.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"author": "abaplint",
|
|
30
30
|
"license": "MIT",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@abaplint/core": "^2.113.
|
|
32
|
+
"@abaplint/core": "^2.113.233",
|
|
33
33
|
"source-map": "^0.7.6"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|