@abaplint/transpiler-cli 2.6.9 → 2.6.11

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.
Files changed (2) hide show
  1. package/build/bundle.js +10 -8
  2. package/package.json +2 -2
package/build/bundle.js CHANGED
@@ -68848,7 +68848,7 @@ class MethodSourceTranspiler {
68848
68848
  ret.appendString(`if (${call} === undefined) { throw new ${illegalClass}(); }\n`);
68849
68849
  const name = children[i + 2];
68850
68850
  if (name.get() instanceof core_1.Expressions.AttributeName) {
68851
- const suffix = "." + name.concatTokens().toLowerCase();
68851
+ const suffix = "." + name.concatTokens().toLowerCase().replace("~", "$");
68852
68852
  ret.appendString(`if (${call + suffix} === undefined && ${illegalMethod} === undefined) { throw "CX_SY_DYN_CALL_ILLEGAL_METHOD not found"; }\n`);
68853
68853
  ret.appendString(`if (${call + suffix} === undefined) { throw new ${illegalMethod}(); }\n`);
68854
68854
  }
@@ -77705,7 +77705,7 @@ class Traversal {
77705
77705
  }
77706
77706
  // attributes from directly implemented interfaces(not interfaces implemented in super classes)
77707
77707
  for (const i of def.getImplementing()) {
77708
- ret += this.dataFromInterfaces(i.name, scope);
77708
+ ret += this.dataFromInterfaces(i.name, scope, cName);
77709
77709
  }
77710
77710
  // handle aliases after initialization of carrier variables
77711
77711
  for (const a of ((_b = def.getAliases()) === null || _b === void 0 ? void 0 : _b.getAll()) || []) {
@@ -77740,7 +77740,7 @@ class Traversal {
77740
77740
  }
77741
77741
  return clas;
77742
77742
  }
77743
- dataFromInterfaces(name, scope) {
77743
+ dataFromInterfaces(name, scope, cname) {
77744
77744
  let ret = "";
77745
77745
  const intf = this.findInterfaceDefinition(name, scope);
77746
77746
  for (const a of (intf === null || intf === void 0 ? void 0 : intf.getAttributes().getConstants()) || []) {
@@ -77754,15 +77754,17 @@ class Traversal {
77754
77754
  }
77755
77755
  }
77756
77756
  for (const a of (intf === null || intf === void 0 ? void 0 : intf.getAttributes().getAll()) || []) {
77757
- if (a.getMeta().includes("static" /* abaplint.IdentifierMeta.Static */) === true) {
77758
- continue;
77759
- }
77760
77757
  const n = Traversal.escapeNamespace(name.toLowerCase()) + "$" + a.getName().toLowerCase();
77761
77758
  // note: interface inheritenace and super inheritance might be strange,
77762
- ret += "if (this." + n + " === undefined) this." + n + " = " + new transpile_types_1.TranspileTypes().toType(a.getType()) + ";\n";
77759
+ if (a.getMeta().includes("static" /* abaplint.IdentifierMeta.Static */) === true) {
77760
+ ret += "if (this." + n + " === undefined) this." + n + " = " + cname + "." + n + ";\n";
77761
+ }
77762
+ else {
77763
+ ret += "if (this." + n + " === undefined) this." + n + " = " + new transpile_types_1.TranspileTypes().toType(a.getType()) + ";\n";
77764
+ }
77763
77765
  }
77764
77766
  for (const i of (intf === null || intf === void 0 ? void 0 : intf.getImplementing()) || []) {
77765
- ret += this.dataFromInterfaces(i.name, scope);
77767
+ ret += this.dataFromInterfaces(i.name, scope, cname);
77766
77768
  }
77767
77769
  return ret;
77768
77770
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/transpiler-cli",
3
- "version": "2.6.9",
3
+ "version": "2.6.11",
4
4
  "description": "Transpiler - Command Line Interface",
5
5
  "bin": {
6
6
  "abap_transpile": "./abap_transpile"
@@ -25,7 +25,7 @@
25
25
  "author": "abaplint",
26
26
  "license": "MIT",
27
27
  "devDependencies": {
28
- "@abaplint/transpiler": "^2.6.9",
28
+ "@abaplint/transpiler": "^2.6.11",
29
29
  "@types/glob": "^7.2.0",
30
30
  "glob": "=7.2.0",
31
31
  "@types/progress": "^2.0.5",