@abaplint/core 2.95.0 → 2.95.1

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.
@@ -5308,6 +5308,7 @@ declare class StatementNode extends AbstractNode<ExpressionNode | TokenNode> {
5308
5308
  includesToken(search: Token): boolean;
5309
5309
  getTokenNodes(): readonly TokenNode[];
5310
5310
  concatTokens(): string;
5311
+ concatTokensVirtual(): string;
5311
5312
  concatTokensWithoutStringsAndComments(): string;
5312
5313
  getTerminator(): string;
5313
5314
  getFirstToken(): Token;
@@ -85,6 +85,30 @@ class StatementNode extends _abstract_node_1.AbstractNode {
85
85
  }
86
86
  return str;
87
87
  }
88
+ concatTokensVirtual() {
89
+ let str = "";
90
+ let prev;
91
+ for (const token of this.getTokens()) {
92
+ if (token instanceof pragma_1.Pragma) {
93
+ continue;
94
+ }
95
+ const vprev = prev === null || prev === void 0 ? void 0 : prev.getStart();
96
+ const vtoke = token === null || token === void 0 ? void 0 : token.getStart();
97
+ if (str === "") {
98
+ str = token.getStr();
99
+ }
100
+ else if (prev && vprev && vtoke
101
+ && prev.getStr().length + vprev.vcol === vtoke.vcol
102
+ && vprev.vrow === vtoke.vrow) {
103
+ str = str + token.getStr();
104
+ }
105
+ else {
106
+ str = str + " " + token.getStr();
107
+ }
108
+ prev = token;
109
+ }
110
+ return str;
111
+ }
88
112
  concatTokensWithoutStringsAndComments() {
89
113
  let str = "";
90
114
  let prev;
@@ -63,7 +63,7 @@ class Registry {
63
63
  }
64
64
  static abaplintVersion() {
65
65
  // magic, see build script "version.sh"
66
- return "2.95.0";
66
+ return "2.95.1";
67
67
  }
68
68
  getDDICReferences() {
69
69
  return this.references;
@@ -52,7 +52,10 @@ _hello.`,
52
52
  for (let j = i + 1; j < statements.length; j++) {
53
53
  const sub = statements[j];
54
54
  if (sub.getFirstToken().getStart() instanceof position_1.VirtualPosition) {
55
- replace += sub.concatTokens();
55
+ if (replace !== "") {
56
+ replace += "\n";
57
+ }
58
+ replace += sub.concatTokensVirtual();
56
59
  }
57
60
  else {
58
61
  break;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/core",
3
- "version": "2.95.0",
3
+ "version": "2.95.1",
4
4
  "description": "abaplint - Core API",
5
5
  "main": "build/src/index.js",
6
6
  "typings": "build/abaplint.d.ts",