@abaplint/transpiler 2.11.22 → 2.11.24

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.
@@ -82,6 +82,17 @@ class CompareTranspiler {
82
82
  const s2 = traversal.traverse(sources[2]);
83
83
  return new chunk_1.Chunk().appendString(pre + "abap.compare.between(").join([s0, s1, s2]).appendString(")");
84
84
  }
85
+ const chain = node.findDirectExpression(core_1.Expressions.MethodCallChain);
86
+ if (chain) {
87
+ const name = chain.getFirstToken().getStr();
88
+ if (new core_1.BuiltIn().isPredicate(name)) {
89
+ // todo, this is not completely correct if there is a method shadowing the name
90
+ return new chunk_1.Chunk().appendString(`abap.compare.eq(` + traversal.traverse(chain).getCode() + `, abap.builtin.abap_true)`);
91
+ }
92
+ else {
93
+ return new chunk_1.Chunk().appendString(pre + `abap.compare.initial(${traversal.traverse(chain).getCode()}) === false`);
94
+ }
95
+ }
85
96
  console.dir(sources.length);
86
97
  console.dir(concat);
87
98
  return new chunk_1.Chunk("CompareTodo");
@@ -8,7 +8,7 @@ const chunk_1 = require("../chunk");
8
8
  class ReadTableTranspiler {
9
9
  transpile(node, traversal) {
10
10
  let prefix = "";
11
- const s = node.findDirectExpression(abaplint.Expressions.SimpleSource2);
11
+ const s = node.getChildren()[2];
12
12
  const ret = traversal.traverse(s).getCode();
13
13
  const extra = [];
14
14
  const index = node.findExpressionAfterToken("INDEX");
@@ -621,6 +621,14 @@ this.INTERNAL_ID = abap.internalIdCounter++;\n`;
621
621
  return abaplint.BasicTypes.StringType.get();
622
622
  case "xstring":
623
623
  return abaplint.BasicTypes.XStringType.get();
624
+ case "decfloat16":
625
+ return new abaplint.BasicTypes.DecFloat16Type();
626
+ case "decfloat34":
627
+ return new abaplint.BasicTypes.DecFloat34Type();
628
+ case "utclong":
629
+ return new abaplint.BasicTypes.UTCLongType();
630
+ case "int8":
631
+ return new abaplint.BasicTypes.Integer8Type();
624
632
  case "d":
625
633
  return new abaplint.BasicTypes.DateType();
626
634
  case "t":
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/transpiler",
3
- "version": "2.11.22",
3
+ "version": "2.11.24",
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.167",
32
+ "@abaplint/core": "^2.113.168",
33
33
  "source-map": "^0.7.6"
34
34
  },
35
35
  "devDependencies": {