@openrewrite/rewrite 8.72.2 → 8.72.3

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 (197) hide show
  1. package/dist/execution.js +3 -16
  2. package/dist/execution.js.map +1 -1
  3. package/dist/index.js +34 -49
  4. package/dist/index.js.map +1 -1
  5. package/dist/java/markers.js +12 -29
  6. package/dist/java/markers.js.map +1 -1
  7. package/dist/java/print.js +2 -13
  8. package/dist/java/print.js.map +1 -1
  9. package/dist/java/rpc.js +1344 -1725
  10. package/dist/java/rpc.js.map +1 -1
  11. package/dist/java/type-visitor.js +143 -184
  12. package/dist/java/type-visitor.js.map +1 -1
  13. package/dist/java/visitor.js +1072 -1249
  14. package/dist/java/visitor.js.map +1 -1
  15. package/dist/javascript/add-import.js +495 -534
  16. package/dist/javascript/add-import.js.map +1 -1
  17. package/dist/javascript/autodetect.js +116 -159
  18. package/dist/javascript/autodetect.js.map +1 -1
  19. package/dist/javascript/cleanup/add-parse-int-radix.js +41 -57
  20. package/dist/javascript/cleanup/add-parse-int-radix.js.map +1 -1
  21. package/dist/javascript/cleanup/prefer-optional-chain.js +89 -105
  22. package/dist/javascript/cleanup/prefer-optional-chain.js.map +1 -1
  23. package/dist/javascript/cleanup/use-object-property-shorthand.js +74 -95
  24. package/dist/javascript/cleanup/use-object-property-shorthand.js.map +1 -1
  25. package/dist/javascript/comparator.js +815 -1167
  26. package/dist/javascript/comparator.js.map +1 -1
  27. package/dist/javascript/dependency-workspace.js +206 -219
  28. package/dist/javascript/dependency-workspace.js.map +1 -1
  29. package/dist/javascript/format/format.js +682 -908
  30. package/dist/javascript/format/format.js.map +1 -1
  31. package/dist/javascript/format/minimum-viable-spacing-visitor.js +152 -231
  32. package/dist/javascript/format/minimum-viable-spacing-visitor.js.map +1 -1
  33. package/dist/javascript/format/normalize-whitespace-visitor.js +12 -31
  34. package/dist/javascript/format/normalize-whitespace-visitor.js.map +1 -1
  35. package/dist/javascript/format/prettier-config-loader.js +134 -153
  36. package/dist/javascript/format/prettier-config-loader.js.map +1 -1
  37. package/dist/javascript/format/prettier-format.js +112 -129
  38. package/dist/javascript/format/prettier-format.js.map +1 -1
  39. package/dist/javascript/format/tabs-and-indents-visitor.js +112 -136
  40. package/dist/javascript/format/tabs-and-indents-visitor.js.map +1 -1
  41. package/dist/javascript/markers.js +59 -92
  42. package/dist/javascript/markers.js.map +1 -1
  43. package/dist/javascript/migrate/es6/modernize-octal-escape-sequences.js +39 -52
  44. package/dist/javascript/migrate/es6/modernize-octal-escape-sequences.js.map +1 -1
  45. package/dist/javascript/migrate/es6/modernize-octal-literals.js +25 -38
  46. package/dist/javascript/migrate/es6/modernize-octal-literals.js.map +1 -1
  47. package/dist/javascript/migrate/es6/remove-duplicate-object-keys.js +66 -82
  48. package/dist/javascript/migrate/es6/remove-duplicate-object-keys.js.map +1 -1
  49. package/dist/javascript/migrate/typescript/export-assignment-to-export-default.js +10 -23
  50. package/dist/javascript/migrate/typescript/export-assignment-to-export-default.js.map +1 -1
  51. package/dist/javascript/node-resolution-result.js +137 -166
  52. package/dist/javascript/node-resolution-result.js.map +1 -1
  53. package/dist/javascript/package-json-parser.js +312 -343
  54. package/dist/javascript/package-json-parser.js.map +1 -1
  55. package/dist/javascript/package-manager.js +145 -170
  56. package/dist/javascript/package-manager.js.map +1 -1
  57. package/dist/javascript/parser.d.ts.map +1 -1
  58. package/dist/javascript/parser.js +94 -68
  59. package/dist/javascript/parser.js.map +1 -1
  60. package/dist/javascript/print.js +1572 -1835
  61. package/dist/javascript/print.js.map +1 -1
  62. package/dist/javascript/project-parser.js +151 -172
  63. package/dist/javascript/project-parser.js.map +1 -1
  64. package/dist/javascript/recipes/add-dependency.js +140 -175
  65. package/dist/javascript/recipes/add-dependency.js.map +1 -1
  66. package/dist/javascript/recipes/async-callback-in-sync-array-method.js +20 -36
  67. package/dist/javascript/recipes/async-callback-in-sync-array-method.js.map +1 -1
  68. package/dist/javascript/recipes/auto-format.js +3 -14
  69. package/dist/javascript/recipes/auto-format.js.map +1 -1
  70. package/dist/javascript/recipes/change-import.js +447 -495
  71. package/dist/javascript/recipes/change-import.js.map +1 -1
  72. package/dist/javascript/recipes/order-imports.js +162 -175
  73. package/dist/javascript/recipes/order-imports.js.map +1 -1
  74. package/dist/javascript/recipes/upgrade-dependency-version.js +167 -197
  75. package/dist/javascript/recipes/upgrade-dependency-version.js.map +1 -1
  76. package/dist/javascript/recipes/upgrade-transitive-dependency-version.js +166 -193
  77. package/dist/javascript/recipes/upgrade-transitive-dependency-version.js.map +1 -1
  78. package/dist/javascript/remove-import.js +689 -724
  79. package/dist/javascript/remove-import.js.map +1 -1
  80. package/dist/javascript/rpc.js +1007 -1332
  81. package/dist/javascript/rpc.js.map +1 -1
  82. package/dist/javascript/search/find-dependency.js +84 -110
  83. package/dist/javascript/search/find-dependency.js.map +1 -1
  84. package/dist/javascript/search/uses-method.js +5 -19
  85. package/dist/javascript/search/uses-method.js.map +1 -1
  86. package/dist/javascript/search/uses-type.js +9 -20
  87. package/dist/javascript/search/uses-type.js.map +1 -1
  88. package/dist/javascript/templating/comparator.js +737 -822
  89. package/dist/javascript/templating/comparator.js.map +1 -1
  90. package/dist/javascript/templating/engine.js +211 -245
  91. package/dist/javascript/templating/engine.js.map +1 -1
  92. package/dist/javascript/templating/pattern.js +169 -190
  93. package/dist/javascript/templating/pattern.js.map +1 -1
  94. package/dist/javascript/templating/placeholder-replacement.js +172 -210
  95. package/dist/javascript/templating/placeholder-replacement.js.map +1 -1
  96. package/dist/javascript/templating/rewrite.js +75 -97
  97. package/dist/javascript/templating/rewrite.js.map +1 -1
  98. package/dist/javascript/templating/template.js +69 -82
  99. package/dist/javascript/templating/template.js.map +1 -1
  100. package/dist/javascript/tree-debug.js +109 -137
  101. package/dist/javascript/tree-debug.js.map +1 -1
  102. package/dist/javascript/visitor.js +1090 -1254
  103. package/dist/javascript/visitor.js.map +1 -1
  104. package/dist/json/print.js +72 -103
  105. package/dist/json/print.js.map +1 -1
  106. package/dist/json/rpc.js +120 -181
  107. package/dist/json/rpc.js.map +1 -1
  108. package/dist/json/visitor.js +69 -100
  109. package/dist/json/visitor.js.map +1 -1
  110. package/dist/marketplace.js +20 -33
  111. package/dist/marketplace.js.map +1 -1
  112. package/dist/parse-error.js +41 -62
  113. package/dist/parse-error.js.map +1 -1
  114. package/dist/parser.js +7 -18
  115. package/dist/parser.js.map +1 -1
  116. package/dist/path-utils.js +46 -59
  117. package/dist/path-utils.js.map +1 -1
  118. package/dist/preconditions.js +30 -47
  119. package/dist/preconditions.js.map +1 -1
  120. package/dist/print.js +6 -19
  121. package/dist/print.js.map +1 -1
  122. package/dist/recipe.js +42 -73
  123. package/dist/recipe.js.map +1 -1
  124. package/dist/rpc/index.js +74 -115
  125. package/dist/rpc/index.js.map +1 -1
  126. package/dist/rpc/queue.js +71 -90
  127. package/dist/rpc/queue.js.map +1 -1
  128. package/dist/rpc/recipe.js +32 -57
  129. package/dist/rpc/recipe.js.map +1 -1
  130. package/dist/rpc/request/generate.js +4 -13
  131. package/dist/rpc/request/generate.js.map +1 -1
  132. package/dist/rpc/request/get-languages.js +2 -11
  133. package/dist/rpc/request/get-languages.js.map +1 -1
  134. package/dist/rpc/request/get-marketplace.js +9 -20
  135. package/dist/rpc/request/get-marketplace.js.map +1 -1
  136. package/dist/rpc/request/get-object.js +4 -13
  137. package/dist/rpc/request/get-object.js.map +1 -1
  138. package/dist/rpc/request/install-recipes.js +25 -36
  139. package/dist/rpc/request/install-recipes.js.map +1 -1
  140. package/dist/rpc/request/metrics.js +8 -17
  141. package/dist/rpc/request/metrics.js.map +1 -1
  142. package/dist/rpc/request/parse-project.js +36 -45
  143. package/dist/rpc/request/parse-project.js.map +1 -1
  144. package/dist/rpc/request/parse.js +5 -14
  145. package/dist/rpc/request/parse.js.map +1 -1
  146. package/dist/rpc/request/prepare-recipe.js +37 -52
  147. package/dist/rpc/request/prepare-recipe.js.map +1 -1
  148. package/dist/rpc/request/print.js +5 -14
  149. package/dist/rpc/request/print.js.map +1 -1
  150. package/dist/rpc/request/visit.js +56 -71
  151. package/dist/rpc/request/visit.js.map +1 -1
  152. package/dist/rpc/rewrite-rpc.js +70 -97
  153. package/dist/rpc/rewrite-rpc.js.map +1 -1
  154. package/dist/rpc/server.js +76 -89
  155. package/dist/rpc/server.js.map +1 -1
  156. package/dist/run.js +47 -66
  157. package/dist/run.js.map +1 -1
  158. package/dist/search/is-source-file.js +8 -19
  159. package/dist/search/is-source-file.js.map +1 -1
  160. package/dist/test/rewrite-test.js +154 -188
  161. package/dist/test/rewrite-test.js.map +1 -1
  162. package/dist/text/print.js +23 -38
  163. package/dist/text/print.js.map +1 -1
  164. package/dist/text/rpc.js +29 -44
  165. package/dist/text/rpc.js.map +1 -1
  166. package/dist/text/visitor.js +16 -33
  167. package/dist/text/visitor.js.map +1 -1
  168. package/dist/util.js +13 -24
  169. package/dist/util.js.map +1 -1
  170. package/dist/version.txt +1 -1
  171. package/dist/visitor.js +84 -115
  172. package/dist/visitor.js.map +1 -1
  173. package/dist/yaml/index.d.ts +2 -0
  174. package/dist/yaml/index.d.ts.map +1 -1
  175. package/dist/yaml/index.js +2 -0
  176. package/dist/yaml/index.js.map +1 -1
  177. package/dist/yaml/markers.d.ts +21 -0
  178. package/dist/yaml/markers.d.ts.map +1 -0
  179. package/dist/yaml/markers.js +37 -0
  180. package/dist/yaml/markers.js.map +1 -0
  181. package/dist/yaml/parser.d.ts.map +1 -1
  182. package/dist/yaml/parser.js +4 -1
  183. package/dist/yaml/parser.js.map +1 -1
  184. package/dist/yaml/print.d.ts +1 -1
  185. package/dist/yaml/print.d.ts.map +1 -1
  186. package/dist/yaml/print.js +175 -208
  187. package/dist/yaml/print.js.map +1 -1
  188. package/dist/yaml/rpc.js +154 -219
  189. package/dist/yaml/rpc.js.map +1 -1
  190. package/dist/yaml/visitor.js +78 -113
  191. package/dist/yaml/visitor.js.map +1 -1
  192. package/package.json +1 -1
  193. package/src/javascript/parser.ts +56 -14
  194. package/src/yaml/index.ts +2 -0
  195. package/src/yaml/markers.ts +70 -0
  196. package/src/yaml/parser.ts +5 -1
  197. package/src/yaml/print.ts +5 -2
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.TypeVisitor = void 0;
13
4
  /*
@@ -32,23 +23,17 @@ class TypeVisitor {
32
23
  constructor() {
33
24
  this.cursor = (0, tree_1.rootCursor)();
34
25
  }
35
- visitList(types, p) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- if (!types) {
38
- return undefined;
39
- }
40
- return (0, util_1.mapAsync)(types, t => this.visit(t, p));
41
- });
26
+ async visitList(types, p) {
27
+ if (!types) {
28
+ return undefined;
29
+ }
30
+ return (0, util_1.mapAsync)(types, t => this.visit(t, p));
42
31
  }
43
- preVisit(type, p) {
44
- return __awaiter(this, void 0, void 0, function* () {
45
- return type;
46
- });
32
+ async preVisit(type, p) {
33
+ return type;
47
34
  }
48
- postVisit(type, p) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- return type;
51
- });
35
+ async postVisit(type, p) {
36
+ return type;
52
37
  }
53
38
  /**
54
39
  * By calling this method, you are asserting that you know that the outcome will be non-null
@@ -59,145 +44,129 @@ class TypeVisitor {
59
44
  * @param p A state object that passes through the visitor.
60
45
  * @return A non-null type.
61
46
  */
62
- visitNonNull(type, p) {
63
- return __awaiter(this, void 0, void 0, function* () {
64
- const t = yield this.visit(type, p);
65
- if (!t) {
66
- throw new Error("Expected non-null type");
67
- }
68
- return t;
69
- });
70
- }
71
- visit(type, p) {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- if (!type) {
74
- return undefined;
75
- }
76
- this.cursor = new tree_1.Cursor(type, this.cursor);
77
- let result = yield this.preVisit(type, p);
78
- if (!result) {
79
- this.cursor = this.cursor.parent;
80
- return undefined;
81
- }
82
- switch (result.kind) {
83
- case type_1.Type.Kind.Array:
84
- result = yield this.visitArray(result, p);
85
- break;
86
- case type_1.Type.Kind.Annotation:
87
- result = yield this.visitAnnotation(result, p);
88
- break;
89
- case type_1.Type.Kind.Class:
90
- result = yield this.visitClass(result, p);
91
- break;
92
- case type_1.Type.Kind.GenericTypeVariable:
93
- result = yield this.visitGenericTypeVariable(result, p);
94
- break;
95
- case type_1.Type.Kind.Intersection:
96
- result = yield this.visitIntersection(result, p);
97
- break;
98
- case type_1.Type.Kind.Union:
99
- result = yield this.visitUnion(result, p);
100
- break;
101
- case type_1.Type.Kind.Parameterized:
102
- result = yield this.visitParameterized(result, p);
103
- break;
104
- case type_1.Type.Kind.Primitive:
105
- result = yield this.visitPrimitive(result, p);
106
- break;
107
- case type_1.Type.Kind.Method:
108
- result = yield this.visitMethod(result, p);
109
- break;
110
- case type_1.Type.Kind.Variable:
111
- result = yield this.visitVariable(result, p);
112
- break;
113
- case type_1.Type.Kind.ShallowClass:
114
- result = yield this.visitClass(result, p);
115
- break;
116
- case type_1.Type.Kind.Unknown:
117
- result = yield this.visitUnknown(result, p);
118
- break;
47
+ async visitNonNull(type, p) {
48
+ const t = await this.visit(type, p);
49
+ if (!t) {
50
+ throw new Error("Expected non-null type");
51
+ }
52
+ return t;
53
+ }
54
+ async visit(type, p) {
55
+ if (!type) {
56
+ return undefined;
57
+ }
58
+ this.cursor = new tree_1.Cursor(type, this.cursor);
59
+ let result = await this.preVisit(type, p);
60
+ if (!result) {
61
+ this.cursor = this.cursor.parent;
62
+ return undefined;
63
+ }
64
+ switch (result.kind) {
65
+ case type_1.Type.Kind.Array:
66
+ result = await this.visitArray(result, p);
67
+ break;
68
+ case type_1.Type.Kind.Annotation:
69
+ result = await this.visitAnnotation(result, p);
70
+ break;
71
+ case type_1.Type.Kind.Class:
72
+ result = await this.visitClass(result, p);
73
+ break;
74
+ case type_1.Type.Kind.GenericTypeVariable:
75
+ result = await this.visitGenericTypeVariable(result, p);
76
+ break;
77
+ case type_1.Type.Kind.Intersection:
78
+ result = await this.visitIntersection(result, p);
79
+ break;
80
+ case type_1.Type.Kind.Union:
81
+ result = await this.visitUnion(result, p);
82
+ break;
83
+ case type_1.Type.Kind.Parameterized:
84
+ result = await this.visitParameterized(result, p);
85
+ break;
86
+ case type_1.Type.Kind.Primitive:
87
+ result = await this.visitPrimitive(result, p);
88
+ break;
89
+ case type_1.Type.Kind.Method:
90
+ result = await this.visitMethod(result, p);
91
+ break;
92
+ case type_1.Type.Kind.Variable:
93
+ result = await this.visitVariable(result, p);
94
+ break;
95
+ case type_1.Type.Kind.ShallowClass:
96
+ result = await this.visitClass(result, p);
97
+ break;
98
+ case type_1.Type.Kind.Unknown:
99
+ result = await this.visitUnknown(result, p);
100
+ break;
101
+ }
102
+ if (result) {
103
+ result = await this.postVisit(result, p);
104
+ }
105
+ this.cursor = this.cursor.parent;
106
+ return result;
107
+ }
108
+ async visitUnion(union, p) {
109
+ return (0, util_1.updateIfChanged)(union, {
110
+ bounds: await (0, util_1.mapAsync)(union.bounds || [], b => this.visit(b, p)),
111
+ });
112
+ }
113
+ async visitAnnotation(annotation, p) {
114
+ const newType = await this.visit(annotation.type, p);
115
+ // Note: values contain element values which themselves contain Type references
116
+ const newValues = await (0, util_1.mapAsync)(annotation.values || [], async (v) => {
117
+ const newElement = await this.visit(v.element, p);
118
+ if (v.kind === type_1.Type.Kind.SingleElementValue) {
119
+ const single = v;
120
+ const newReferenceValue = single.referenceValue
121
+ ? await this.visit(single.referenceValue, p)
122
+ : undefined;
123
+ return (0, util_1.updateIfChanged)(v, {
124
+ element: newElement,
125
+ referenceValue: newReferenceValue,
126
+ });
119
127
  }
120
- if (result) {
121
- result = yield this.postVisit(result, p);
128
+ else if (v.kind === type_1.Type.Kind.ArrayElementValue) {
129
+ const array = v;
130
+ const newReferenceValues = array.referenceValues
131
+ ? await (0, util_1.mapAsync)(array.referenceValues, rv => this.visit(rv, p))
132
+ : undefined;
133
+ return (0, util_1.updateIfChanged)(v, {
134
+ element: newElement,
135
+ referenceValues: newReferenceValues,
136
+ });
122
137
  }
123
- this.cursor = this.cursor.parent;
124
- return result;
125
- });
126
- }
127
- visitUnion(union, p) {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- return (0, util_1.updateIfChanged)(union, {
130
- bounds: yield (0, util_1.mapAsync)(union.bounds || [], b => this.visit(b, p)),
131
- });
138
+ return (0, util_1.updateIfChanged)(v, { element: newElement });
132
139
  });
133
- }
134
- visitAnnotation(annotation, p) {
135
- return __awaiter(this, void 0, void 0, function* () {
136
- const newType = yield this.visit(annotation.type, p);
137
- // Note: values contain element values which themselves contain Type references
138
- const newValues = yield (0, util_1.mapAsync)(annotation.values || [], (v) => __awaiter(this, void 0, void 0, function* () {
139
- const newElement = yield this.visit(v.element, p);
140
- if (v.kind === type_1.Type.Kind.SingleElementValue) {
141
- const single = v;
142
- const newReferenceValue = single.referenceValue
143
- ? yield this.visit(single.referenceValue, p)
144
- : undefined;
145
- return (0, util_1.updateIfChanged)(v, {
146
- element: newElement,
147
- referenceValue: newReferenceValue,
148
- });
149
- }
150
- else if (v.kind === type_1.Type.Kind.ArrayElementValue) {
151
- const array = v;
152
- const newReferenceValues = array.referenceValues
153
- ? yield (0, util_1.mapAsync)(array.referenceValues, rv => this.visit(rv, p))
154
- : undefined;
155
- return (0, util_1.updateIfChanged)(v, {
156
- element: newElement,
157
- referenceValues: newReferenceValues,
158
- });
159
- }
160
- return (0, util_1.updateIfChanged)(v, { element: newElement });
161
- }));
162
- return (0, util_1.updateIfChanged)(annotation, {
163
- type: newType,
164
- values: newValues,
165
- });
140
+ return (0, util_1.updateIfChanged)(annotation, {
141
+ type: newType,
142
+ values: newValues,
166
143
  });
167
144
  }
168
- visitArray(array, p) {
169
- return __awaiter(this, void 0, void 0, function* () {
170
- return (0, util_1.updateIfChanged)(array, {
171
- elemType: yield this.visit(array.elemType, p),
172
- annotations: (yield this.visitList(array.annotations, p)) || [],
173
- });
145
+ async visitArray(array, p) {
146
+ return (0, util_1.updateIfChanged)(array, {
147
+ elemType: await this.visit(array.elemType, p),
148
+ annotations: await this.visitList(array.annotations, p) || [],
174
149
  });
175
150
  }
176
- visitClass(aClass, p) {
177
- return __awaiter(this, void 0, void 0, function* () {
178
- return (0, util_1.updateIfChanged)(aClass, {
179
- supertype: yield this.visit(aClass.supertype, p),
180
- owningClass: yield this.visit(aClass.owningClass, p),
181
- annotations: yield (0, util_1.mapAsync)(aClass.annotations || [], a => this.visit(a, p)),
182
- interfaces: yield (0, util_1.mapAsync)(aClass.interfaces || [], i => this.visit(i, p)),
183
- members: yield (0, util_1.mapAsync)(aClass.members || [], m => this.visit(m, p)),
184
- methods: yield (0, util_1.mapAsync)(aClass.methods || [], m => this.visit(m, p)),
185
- typeParameters: (yield this.visitList(aClass.typeParameters, p)) || [],
186
- });
151
+ async visitClass(aClass, p) {
152
+ return (0, util_1.updateIfChanged)(aClass, {
153
+ supertype: await this.visit(aClass.supertype, p),
154
+ owningClass: await this.visit(aClass.owningClass, p),
155
+ annotations: await (0, util_1.mapAsync)(aClass.annotations || [], a => this.visit(a, p)),
156
+ interfaces: await (0, util_1.mapAsync)(aClass.interfaces || [], i => this.visit(i, p)),
157
+ members: await (0, util_1.mapAsync)(aClass.members || [], m => this.visit(m, p)),
158
+ methods: await (0, util_1.mapAsync)(aClass.methods || [], m => this.visit(m, p)),
159
+ typeParameters: await this.visitList(aClass.typeParameters, p) || [],
187
160
  });
188
161
  }
189
- visitGenericTypeVariable(generic, p) {
190
- return __awaiter(this, void 0, void 0, function* () {
191
- return (0, util_1.updateIfChanged)(generic, {
192
- bounds: yield (0, util_1.mapAsync)(generic.bounds || [], b => this.visit(b, p)),
193
- });
162
+ async visitGenericTypeVariable(generic, p) {
163
+ return (0, util_1.updateIfChanged)(generic, {
164
+ bounds: await (0, util_1.mapAsync)(generic.bounds || [], b => this.visit(b, p)),
194
165
  });
195
166
  }
196
- visitIntersection(intersection, p) {
197
- return __awaiter(this, void 0, void 0, function* () {
198
- return (0, util_1.updateIfChanged)(intersection, {
199
- bounds: yield (0, util_1.mapAsync)(intersection.bounds || [], b => this.visit(b, p)),
200
- });
167
+ async visitIntersection(intersection, p) {
168
+ return (0, util_1.updateIfChanged)(intersection, {
169
+ bounds: await (0, util_1.mapAsync)(intersection.bounds || [], b => this.visit(b, p)),
201
170
  });
202
171
  }
203
172
  /**
@@ -207,30 +176,24 @@ class TypeVisitor {
207
176
  * @param p Visit context
208
177
  * @return A method
209
178
  */
210
- visitMethod(method, p) {
211
- return __awaiter(this, void 0, void 0, function* () {
212
- return (0, util_1.updateIfChanged)(method, {
213
- declaringType: yield this.visit(method.declaringType, p),
214
- returnType: yield this.visit(method.returnType, p),
215
- parameterTypes: yield (0, util_1.mapAsync)(method.parameterTypes || [], pt => this.visit(pt, p)),
216
- thrownExceptions: yield (0, util_1.mapAsync)(method.thrownExceptions || [], t => this.visit(t, p)),
217
- annotations: yield (0, util_1.mapAsync)(method.annotations || [], a => this.visit(a, p)),
218
- });
179
+ async visitMethod(method, p) {
180
+ return (0, util_1.updateIfChanged)(method, {
181
+ declaringType: await this.visit(method.declaringType, p),
182
+ returnType: await this.visit(method.returnType, p),
183
+ parameterTypes: await (0, util_1.mapAsync)(method.parameterTypes || [], pt => this.visit(pt, p)),
184
+ thrownExceptions: await (0, util_1.mapAsync)(method.thrownExceptions || [], t => this.visit(t, p)),
185
+ annotations: await (0, util_1.mapAsync)(method.annotations || [], a => this.visit(a, p)),
219
186
  });
220
187
  }
221
- visitParameterized(parameterized, p) {
222
- return __awaiter(this, void 0, void 0, function* () {
223
- return (0, util_1.updateIfChanged)(parameterized, {
224
- type: yield this.visit(parameterized.type, p),
225
- typeParameters: yield (0, util_1.mapAsync)(parameterized.typeParameters || [], t => this.visit(t, p)),
226
- });
188
+ async visitParameterized(parameterized, p) {
189
+ return (0, util_1.updateIfChanged)(parameterized, {
190
+ type: await this.visit(parameterized.type, p),
191
+ typeParameters: await (0, util_1.mapAsync)(parameterized.typeParameters || [], t => this.visit(t, p)),
227
192
  });
228
193
  }
229
- visitPrimitive(primitive, p) {
230
- return __awaiter(this, void 0, void 0, function* () {
231
- // Primitives are immutable singletons, just return as-is
232
- return primitive;
233
- });
194
+ async visitPrimitive(primitive, p) {
195
+ // Primitives are immutable singletons, just return as-is
196
+ return primitive;
234
197
  }
235
198
  /**
236
199
  * This does not visit the owner to avoid a visitor cycle.
@@ -239,20 +202,16 @@ class TypeVisitor {
239
202
  * @param p Visit context
240
203
  * @return A variable
241
204
  */
242
- visitVariable(variable, p) {
243
- return __awaiter(this, void 0, void 0, function* () {
244
- return (0, util_1.updateIfChanged)(variable, {
245
- owner: yield this.visit(variable.owner, p),
246
- type: yield this.visit(variable.type, p),
247
- annotations: yield (0, util_1.mapAsync)(variable.annotations || [], a => this.visit(a, p)),
248
- });
205
+ async visitVariable(variable, p) {
206
+ return (0, util_1.updateIfChanged)(variable, {
207
+ owner: await this.visit(variable.owner, p),
208
+ type: await this.visit(variable.type, p),
209
+ annotations: await (0, util_1.mapAsync)(variable.annotations || [], a => this.visit(a, p)),
249
210
  });
250
211
  }
251
- visitUnknown(unknown, p) {
252
- return __awaiter(this, void 0, void 0, function* () {
253
- // Unknown types have no properties to visit
254
- return unknown;
255
- });
212
+ async visitUnknown(unknown, p) {
213
+ // Unknown types have no properties to visit
214
+ return unknown;
256
215
  }
257
216
  }
258
217
  exports.TypeVisitor = TypeVisitor;
@@ -1 +1 @@
1
- {"version":3,"file":"type-visitor.js","sourceRoot":"","sources":["../../src/java/type-visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-visitor.js","sourceRoot":"","sources":["../../src/java/type-visitor.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;GAcG;AACH,kCAA2C;AAC3C,kCAAkD;AAClD,iCAA4B;AAE5B,MAAa,WAAW;IAAxB;QACc,WAAM,GAAW,IAAA,iBAAU,GAAE,CAAC;IAmN5C,CAAC;IAjNG,KAAK,CAAC,SAAS,CAAiB,KAAsB,EAAE,CAAI;QACxD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,OAAO,IAAA,eAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAe,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAU,EAAE,CAAI;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAU,EAAE,CAAI;QAC5B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,YAAY,CAAC,IAAU,EAAE,CAAI;QAC/B,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,CAAC,EAAE,CAAC;YACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAAK,CAAiB,IAAmB,EAAE,CAAI;QACjD,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,aAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5C,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC;YAClC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,WAAI,CAAC,IAAI,CAAC,KAAK;gBAChB,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAoB,EAAE,CAAC,CAAC,CAAC;gBACxD,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,UAAU;gBACrB,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAyB,EAAE,CAAC,CAAC,CAAC;gBAClE,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,KAAK;gBAChB,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAoB,EAAE,CAAC,CAAC,CAAC;gBACxD,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,mBAAmB;gBAC9B,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAkC,EAAE,CAAC,CAAC,CAAC;gBACpF,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,YAAY;gBACvB,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAA2B,EAAE,CAAC,CAAC,CAAC;gBACtE,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,KAAK;gBAChB,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAoB,EAAE,CAAC,CAAC,CAAC;gBACxD,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,aAAa;gBACxB,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAA4B,EAAE,CAAC,CAAC,CAAC;gBACxE,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,SAAS;gBACpB,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAwB,EAAE,CAAC,CAAC,CAAC;gBAChE,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,MAAM;gBACjB,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAqB,EAAE,CAAC,CAAC,CAAC;gBAC1D,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,QAAQ;gBACnB,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAuB,EAAE,CAAC,CAAC,CAAC;gBAC9D,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,YAAY;gBACvB,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAA2B,EAAE,CAAC,CAAC,CAAC;gBAC/D,MAAM;YACV,KAAK,WAAI,CAAC,IAAI,CAAC,OAAO;gBAClB,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC5C,MAAM;QACd,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC;QAClC,OAAO,MAAW,CAAC;IACvB,CAAC;IAES,KAAK,CAAC,UAAU,CAAC,KAAiB,EAAE,CAAI;QAC9C,OAAO,IAAA,sBAAe,EAAC,KAAK,EAAE;YAC1B,MAAM,EAAE,MAAM,IAAA,eAAQ,EAAC,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAW;SAC9E,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,UAA2B,EAAE,CAAI;QAC7D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAwB,CAAC;QAC5E,+EAA+E;QAC/E,MAAM,SAAS,GAAG,MAAM,IAAA,eAAQ,EAAC,UAAU,CAAC,MAAM,IAAI,EAAE,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;YAChE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,CAAC,IAAI,KAAK,WAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC1C,MAAM,MAAM,GAAG,CAAuC,CAAC;gBACvD,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc;oBAC3C,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;oBAC5C,CAAC,CAAC,SAAS,CAAC;gBAChB,OAAO,IAAA,sBAAe,EAAC,CAAC,EAAE;oBACtB,OAAO,EAAE,UAAU;oBACnB,cAAc,EAAE,iBAAiB;iBACpC,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAChD,MAAM,KAAK,GAAG,CAAsC,CAAC;gBACrD,MAAM,kBAAkB,GAAG,KAAK,CAAC,eAAe;oBAC5C,CAAC,CAAC,MAAM,IAAA,eAAQ,EAAC,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAW;oBAC1E,CAAC,CAAC,SAAS,CAAC;gBAChB,OAAO,IAAA,sBAAe,EAAC,CAAC,EAAE;oBACtB,OAAO,EAAE,UAAU;oBACnB,eAAe,EAAE,kBAAkB;iBACtC,CAAC,CAAC;YACP,CAAC;YACD,OAAO,IAAA,sBAAe,EAAC,CAAC,EAAE,EAAC,OAAO,EAAE,UAAU,EAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QACH,OAAO,IAAA,sBAAe,EAAC,UAAU,EAAE;YAC/B,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,SAAS;SACpB,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,UAAU,CAAC,KAAiB,EAAE,CAAI;QAC9C,OAAO,IAAA,sBAAe,EAAC,KAAK,EAAE;YAC1B,QAAQ,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7C,WAAW,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE;SAChE,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,UAAU,CAAC,MAAkB,EAAE,CAAI;QAC/C,OAAO,IAAA,sBAAe,EAAC,MAAM,EAAE;YAC3B,SAAS,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YAChD,WAAW,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YACpD,WAAW,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5E,UAAU,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1E,OAAO,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACpE,OAAO,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACpE,cAAc,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,EAAE;SACvE,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,wBAAwB,CAAC,OAAiC,EAAE,CAAI;QAC5E,OAAO,IAAA,sBAAe,EAAC,OAAO,EAAE;YAC5B,MAAM,EAAE,MAAM,IAAA,eAAQ,EAAC,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACtE,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,YAA+B,EAAE,CAAI;QACnE,OAAO,IAAA,sBAAe,EAAC,YAAY,EAAE;YACjC,MAAM,EAAE,MAAM,IAAA,eAAQ,EAAC,YAAY,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC3E,CAAC,CAAC;IACP,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,WAAW,CAAC,MAAmB,EAAE,CAAI;QACjD,OAAO,IAAA,sBAAe,EAAC,MAAM,EAAE;YAC3B,aAAa,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;YACxD,UAAU,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAClD,cAAc,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,cAAc,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACpF,gBAAgB,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACtF,WAAW,EAAE,MAAM,IAAA,eAAQ,EAAC,MAAM,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC/E,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,aAAiC,EAAE,CAAI;QACtE,OAAO,IAAA,sBAAe,EAAC,aAAa,EAAE;YAClC,IAAI,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7C,cAAc,EAAE,MAAM,IAAA,eAAQ,EAAC,aAAa,CAAC,cAAc,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC5F,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,SAAyB,EAAE,CAAI;QAC1D,yDAAyD;QACzD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,aAAa,CAAC,QAAuB,EAAE,CAAI;QACvD,OAAO,IAAA,sBAAe,EAAC,QAAQ,EAAE;YAC7B,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1C,IAAI,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,WAAW,EAAE,MAAM,IAAA,eAAQ,EAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACjF,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAa,EAAE,CAAI;QAC5C,4CAA4C;QAC5C,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AApND,kCAoNC"}