@typescript-eslint/scope-manager 8.0.0-alpha.4 → 8.0.0-alpha.40

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 (196) hide show
  1. package/dist/ID.js +2 -3
  2. package/dist/ID.js.map +1 -1
  3. package/dist/ScopeManager.js +17 -18
  4. package/dist/ScopeManager.js.map +1 -1
  5. package/dist/analyze.js +1 -2
  6. package/dist/analyze.js.map +1 -1
  7. package/dist/assert.js +1 -2
  8. package/dist/assert.js.map +1 -1
  9. package/dist/definition/CatchClauseDefinition.js +2 -2
  10. package/dist/definition/CatchClauseDefinition.js.map +1 -1
  11. package/dist/definition/ClassNameDefinition.js +2 -2
  12. package/dist/definition/ClassNameDefinition.js.map +1 -1
  13. package/dist/definition/DefinitionBase.js +20 -4
  14. package/dist/definition/DefinitionBase.js.map +1 -1
  15. package/dist/definition/FunctionNameDefinition.js +2 -2
  16. package/dist/definition/FunctionNameDefinition.js.map +1 -1
  17. package/dist/definition/ImplicitGlobalVariableDefinition.js +2 -2
  18. package/dist/definition/ImplicitGlobalVariableDefinition.js.map +1 -1
  19. package/dist/definition/ImportBindingDefinition.js +2 -2
  20. package/dist/definition/ImportBindingDefinition.js.map +1 -1
  21. package/dist/definition/ParameterDefinition.js +6 -2
  22. package/dist/definition/ParameterDefinition.js.map +1 -1
  23. package/dist/definition/TSEnumMemberDefinition.js +2 -2
  24. package/dist/definition/TSEnumMemberDefinition.js.map +1 -1
  25. package/dist/definition/TSEnumNameDefinition.js +2 -2
  26. package/dist/definition/TSEnumNameDefinition.js.map +1 -1
  27. package/dist/definition/TSModuleNameDefinition.js +2 -2
  28. package/dist/definition/TSModuleNameDefinition.js.map +1 -1
  29. package/dist/definition/TypeDefinition.js +2 -2
  30. package/dist/definition/TypeDefinition.js.map +1 -1
  31. package/dist/definition/VariableDefinition.js +2 -2
  32. package/dist/definition/VariableDefinition.js.map +1 -1
  33. package/dist/lib/decorators.d.ts.map +1 -1
  34. package/dist/lib/decorators.legacy.d.ts.map +1 -1
  35. package/dist/lib/dom.asynciterable.d.ts.map +1 -1
  36. package/dist/lib/dom.asynciterable.js +1 -0
  37. package/dist/lib/dom.asynciterable.js.map +1 -1
  38. package/dist/lib/dom.d.ts.map +1 -1
  39. package/dist/lib/dom.iterable.d.ts.map +1 -1
  40. package/dist/lib/dom.iterable.js +2 -0
  41. package/dist/lib/dom.iterable.js.map +1 -1
  42. package/dist/lib/dom.js +7 -1
  43. package/dist/lib/dom.js.map +1 -1
  44. package/dist/lib/es2015.collection.d.ts.map +1 -1
  45. package/dist/lib/es2015.core.d.ts.map +1 -1
  46. package/dist/lib/es2015.core.js +9 -0
  47. package/dist/lib/es2015.core.js.map +1 -1
  48. package/dist/lib/es2015.d.ts.map +1 -1
  49. package/dist/lib/es2015.generator.d.ts.map +1 -1
  50. package/dist/lib/es2015.iterable.d.ts.map +1 -1
  51. package/dist/lib/es2015.promise.d.ts.map +1 -1
  52. package/dist/lib/es2015.proxy.d.ts.map +1 -1
  53. package/dist/lib/es2015.reflect.d.ts.map +1 -1
  54. package/dist/lib/es2015.symbol.d.ts.map +1 -1
  55. package/dist/lib/es2015.symbol.wellknown.d.ts.map +1 -1
  56. package/dist/lib/es2016.array.include.d.ts.map +1 -1
  57. package/dist/lib/es2016.d.ts.map +1 -1
  58. package/dist/lib/es2016.full.d.ts.map +1 -1
  59. package/dist/lib/es2016.intl.d.ts.map +1 -1
  60. package/dist/lib/es2017.d.ts.map +1 -1
  61. package/dist/lib/es2017.date.d.ts.map +1 -1
  62. package/dist/lib/es2017.full.d.ts.map +1 -1
  63. package/dist/lib/es2017.intl.d.ts.map +1 -1
  64. package/dist/lib/es2017.object.d.ts.map +1 -1
  65. package/dist/lib/es2017.sharedmemory.d.ts.map +1 -1
  66. package/dist/lib/es2017.string.d.ts.map +1 -1
  67. package/dist/lib/es2017.typedarrays.d.ts.map +1 -1
  68. package/dist/lib/es2018.asyncgenerator.d.ts.map +1 -1
  69. package/dist/lib/es2018.asynciterable.d.ts.map +1 -1
  70. package/dist/lib/es2018.d.ts.map +1 -1
  71. package/dist/lib/es2018.full.d.ts.map +1 -1
  72. package/dist/lib/es2018.intl.d.ts.map +1 -1
  73. package/dist/lib/es2018.promise.d.ts.map +1 -1
  74. package/dist/lib/es2018.regexp.d.ts.map +1 -1
  75. package/dist/lib/es2019.array.d.ts.map +1 -1
  76. package/dist/lib/es2019.d.ts.map +1 -1
  77. package/dist/lib/es2019.full.d.ts.map +1 -1
  78. package/dist/lib/es2019.intl.d.ts.map +1 -1
  79. package/dist/lib/es2019.object.d.ts.map +1 -1
  80. package/dist/lib/es2019.string.d.ts.map +1 -1
  81. package/dist/lib/es2019.symbol.d.ts.map +1 -1
  82. package/dist/lib/es2020.bigint.d.ts.map +1 -1
  83. package/dist/lib/es2020.d.ts.map +1 -1
  84. package/dist/lib/es2020.date.d.ts.map +1 -1
  85. package/dist/lib/es2020.full.d.ts.map +1 -1
  86. package/dist/lib/es2020.intl.d.ts.map +1 -1
  87. package/dist/lib/es2020.number.d.ts.map +1 -1
  88. package/dist/lib/es2020.promise.d.ts.map +1 -1
  89. package/dist/lib/es2020.sharedmemory.d.ts.map +1 -1
  90. package/dist/lib/es2020.string.d.ts.map +1 -1
  91. package/dist/lib/es2020.symbol.wellknown.d.ts.map +1 -1
  92. package/dist/lib/es2021.d.ts.map +1 -1
  93. package/dist/lib/es2021.full.d.ts.map +1 -1
  94. package/dist/lib/es2021.intl.d.ts.map +1 -1
  95. package/dist/lib/es2021.promise.d.ts.map +1 -1
  96. package/dist/lib/es2021.string.d.ts.map +1 -1
  97. package/dist/lib/es2021.weakref.d.ts.map +1 -1
  98. package/dist/lib/es2022.array.d.ts.map +1 -1
  99. package/dist/lib/es2022.d.ts.map +1 -1
  100. package/dist/lib/es2022.error.d.ts.map +1 -1
  101. package/dist/lib/es2022.full.d.ts.map +1 -1
  102. package/dist/lib/es2022.intl.d.ts.map +1 -1
  103. package/dist/lib/es2022.object.d.ts.map +1 -1
  104. package/dist/lib/es2022.regexp.d.ts.map +1 -1
  105. package/dist/lib/es2022.sharedmemory.d.ts.map +1 -1
  106. package/dist/lib/es2022.string.d.ts.map +1 -1
  107. package/dist/lib/es2023.array.d.ts.map +1 -1
  108. package/dist/lib/es2023.collection.d.ts.map +1 -1
  109. package/dist/lib/es2023.d.ts.map +1 -1
  110. package/dist/lib/es2023.full.d.ts.map +1 -1
  111. package/dist/lib/es2023.intl.d.ts +3 -0
  112. package/dist/lib/es2023.intl.d.ts.map +1 -0
  113. package/dist/lib/es2023.intl.js +12 -0
  114. package/dist/lib/es2023.intl.js.map +1 -0
  115. package/dist/lib/es2023.js +2 -0
  116. package/dist/lib/es2023.js.map +1 -1
  117. package/dist/lib/es5.d.ts.map +1 -1
  118. package/dist/lib/es6.d.ts.map +1 -1
  119. package/dist/lib/es7.d.ts.map +1 -1
  120. package/dist/lib/esnext.array.d.ts.map +1 -1
  121. package/dist/lib/esnext.array.js +1 -13
  122. package/dist/lib/esnext.array.js.map +1 -1
  123. package/dist/lib/esnext.asynciterable.d.ts.map +1 -1
  124. package/dist/lib/esnext.bigint.d.ts.map +1 -1
  125. package/dist/lib/esnext.collection.d.ts.map +1 -1
  126. package/dist/lib/esnext.collection.js +3 -0
  127. package/dist/lib/esnext.collection.js.map +1 -1
  128. package/dist/lib/esnext.d.ts.map +1 -1
  129. package/dist/lib/esnext.decorators.d.ts.map +1 -1
  130. package/dist/lib/esnext.disposable.d.ts.map +1 -1
  131. package/dist/lib/esnext.full.d.ts.map +1 -1
  132. package/dist/lib/esnext.intl.d.ts.map +1 -1
  133. package/dist/lib/esnext.js +6 -0
  134. package/dist/lib/esnext.js.map +1 -1
  135. package/dist/lib/esnext.object.d.ts.map +1 -1
  136. package/dist/lib/esnext.promise.d.ts.map +1 -1
  137. package/dist/lib/esnext.regexp.d.ts +3 -0
  138. package/dist/lib/esnext.regexp.d.ts.map +1 -0
  139. package/dist/lib/esnext.regexp.js +12 -0
  140. package/dist/lib/esnext.regexp.js.map +1 -0
  141. package/dist/lib/esnext.string.d.ts.map +1 -1
  142. package/dist/lib/esnext.symbol.d.ts.map +1 -1
  143. package/dist/lib/esnext.weakref.d.ts.map +1 -1
  144. package/dist/lib/index.d.ts +2 -0
  145. package/dist/lib/index.d.ts.map +1 -1
  146. package/dist/lib/index.js +4 -0
  147. package/dist/lib/index.js.map +1 -1
  148. package/dist/lib/lib.d.ts.map +1 -1
  149. package/dist/lib/scripthost.d.ts.map +1 -1
  150. package/dist/lib/webworker.asynciterable.d.ts.map +1 -1
  151. package/dist/lib/webworker.asynciterable.js +1 -0
  152. package/dist/lib/webworker.asynciterable.js.map +1 -1
  153. package/dist/lib/webworker.d.ts.map +1 -1
  154. package/dist/lib/webworker.importscripts.d.ts.map +1 -1
  155. package/dist/lib/webworker.iterable.d.ts.map +1 -1
  156. package/dist/lib/webworker.iterable.js +1 -0
  157. package/dist/lib/webworker.iterable.js.map +1 -1
  158. package/dist/lib/webworker.js +1 -0
  159. package/dist/lib/webworker.js.map +1 -1
  160. package/dist/referencer/ClassVisitor.d.ts +1 -0
  161. package/dist/referencer/ClassVisitor.d.ts.map +1 -1
  162. package/dist/referencer/ClassVisitor.js +34 -44
  163. package/dist/referencer/ClassVisitor.js.map +1 -1
  164. package/dist/referencer/ExportVisitor.js +8 -21
  165. package/dist/referencer/ExportVisitor.js.map +1 -1
  166. package/dist/referencer/ImportVisitor.js +6 -19
  167. package/dist/referencer/ImportVisitor.js.map +1 -1
  168. package/dist/referencer/PatternVisitor.js +17 -30
  169. package/dist/referencer/PatternVisitor.js.map +1 -1
  170. package/dist/referencer/Reference.js +47 -34
  171. package/dist/referencer/Reference.js.map +1 -1
  172. package/dist/referencer/Referencer.d.ts.map +1 -1
  173. package/dist/referencer/Referencer.js +16 -31
  174. package/dist/referencer/Referencer.js.map +1 -1
  175. package/dist/referencer/TypeVisitor.js +22 -35
  176. package/dist/referencer/TypeVisitor.js.map +1 -1
  177. package/dist/referencer/Visitor.js +7 -19
  178. package/dist/referencer/Visitor.js.map +1 -1
  179. package/dist/referencer/VisitorBase.js +7 -19
  180. package/dist/referencer/VisitorBase.js.map +1 -1
  181. package/dist/scope/FunctionExpressionNameScope.js +1 -0
  182. package/dist/scope/FunctionExpressionNameScope.js.map +1 -1
  183. package/dist/scope/GlobalScope.js +2 -0
  184. package/dist/scope/GlobalScope.js.map +1 -1
  185. package/dist/scope/ScopeBase.js +132 -122
  186. package/dist/scope/ScopeBase.js.map +1 -1
  187. package/dist/variable/ESLintScopeVariable.js +24 -0
  188. package/dist/variable/ESLintScopeVariable.js.map +1 -1
  189. package/dist/variable/ImplicitLibVariable.js +8 -0
  190. package/dist/variable/ImplicitLibVariable.js.map +1 -1
  191. package/dist/variable/VariableBase.js +35 -26
  192. package/dist/variable/VariableBase.js.map +1 -1
  193. package/dist/variable/index.d.ts +3 -0
  194. package/dist/variable/index.d.ts.map +1 -1
  195. package/dist/variable/index.js.map +1 -1
  196. package/package.json +5 -4
@@ -1,16 +1,4 @@
1
1
  "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _ClassVisitor_classNode, _ClassVisitor_referencer;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.ClassVisitor = void 0;
16
4
  const types_1 = require("@typescript-eslint/types");
@@ -18,12 +6,12 @@ const definition_1 = require("../definition");
18
6
  const TypeVisitor_1 = require("./TypeVisitor");
19
7
  const Visitor_1 = require("./Visitor");
20
8
  class ClassVisitor extends Visitor_1.Visitor {
9
+ #classNode;
10
+ #referencer;
21
11
  constructor(referencer, node) {
22
12
  super(referencer);
23
- _ClassVisitor_classNode.set(this, void 0);
24
- _ClassVisitor_referencer.set(this, void 0);
25
- __classPrivateFieldSet(this, _ClassVisitor_referencer, referencer, "f");
26
- __classPrivateFieldSet(this, _ClassVisitor_classNode, node, "f");
13
+ this.#referencer = referencer;
14
+ this.#classNode = node;
27
15
  }
28
16
  static visit(referencer, node) {
29
17
  const classVisitor = new ClassVisitor(referencer, node);
@@ -35,7 +23,7 @@ class ClassVisitor extends Visitor_1.Visitor {
35
23
  super.visit(node);
36
24
  }
37
25
  else {
38
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node);
26
+ this.#referencer.visit(node);
39
27
  }
40
28
  }
41
29
  ///////////////////
@@ -43,27 +31,27 @@ class ClassVisitor extends Visitor_1.Visitor {
43
31
  ///////////////////
44
32
  visitClass(node) {
45
33
  if (node.type === types_1.AST_NODE_TYPES.ClassDeclaration && node.id) {
46
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f")
34
+ this.#referencer
47
35
  .currentScope()
48
36
  .defineIdentifier(node.id, new definition_1.ClassNameDefinition(node.id, node));
49
37
  }
50
- node.decorators.forEach(d => __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(d));
51
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").scopeManager.nestClassScope(node);
38
+ node.decorators.forEach(d => this.#referencer.visit(d));
39
+ this.#referencer.scopeManager.nestClassScope(node);
52
40
  if (node.id) {
53
41
  // define the class name again inside the new scope
54
42
  // references to the class should not resolve directly to the parent class
55
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f")
43
+ this.#referencer
56
44
  .currentScope()
57
45
  .defineIdentifier(node.id, new definition_1.ClassNameDefinition(node.id, node));
58
46
  }
59
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node.superClass);
47
+ this.#referencer.visit(node.superClass);
60
48
  // visit the type param declarations
61
49
  this.visitType(node.typeParameters);
62
50
  // then the usages
63
51
  this.visitType(node.superTypeArguments);
64
52
  node.implements.forEach(imp => this.visitType(imp));
65
53
  this.visit(node.body);
66
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").close(node);
54
+ this.#referencer.close(node);
67
55
  }
68
56
  visitPropertyDefinition(node) {
69
57
  this.visitPropertyBase(node);
@@ -91,10 +79,10 @@ class ClassVisitor extends Visitor_1.Visitor {
91
79
  if (node.id) {
92
80
  // FunctionExpression with name creates its special scope;
93
81
  // FunctionExpressionNameScope.
94
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").scopeManager.nestFunctionExpressionNameScope(node);
82
+ this.#referencer.scopeManager.nestFunctionExpressionNameScope(node);
95
83
  }
96
84
  // Consider this function is in the MethodDefinition.
97
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").scopeManager.nestFunctionScope(node, true);
85
+ this.#referencer.scopeManager.nestFunctionScope(node, true);
98
86
  /**
99
87
  * class A {
100
88
  * @meta // <--- check this
@@ -131,7 +119,7 @@ class ClassVisitor extends Visitor_1.Visitor {
131
119
  * }
132
120
  */
133
121
  if (keyName != null &&
134
- __classPrivateFieldGet(this, _ClassVisitor_classNode, "f").body.body.find((node) => node !== methodNode &&
122
+ this.#classNode.body.body.find((node) => node !== methodNode &&
135
123
  node.type === types_1.AST_NODE_TYPES.MethodDefinition &&
136
124
  // Node must both be static or not
137
125
  node.static === methodNode.static &&
@@ -147,59 +135,59 @@ class ClassVisitor extends Visitor_1.Visitor {
147
135
  */
148
136
  if (!withMethodDecorators &&
149
137
  methodNode.kind === 'constructor' &&
150
- __classPrivateFieldGet(this, _ClassVisitor_classNode, "f").decorators.length) {
138
+ this.#classNode.decorators.length) {
151
139
  withMethodDecorators = true;
152
140
  }
153
141
  // Process parameter declarations.
154
142
  for (const param of node.params) {
155
143
  this.visitPattern(param, (pattern, info) => {
156
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f")
144
+ this.#referencer
157
145
  .currentScope()
158
146
  .defineIdentifier(pattern, new definition_1.ParameterDefinition(pattern, node, info.rest));
159
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").referencingDefaultValue(pattern, info.assignments, null, true);
147
+ this.#referencer.referencingDefaultValue(pattern, info.assignments, null, true);
160
148
  }, { processRightHandNodes: true });
161
149
  this.visitFunctionParameterTypeAnnotation(param);
162
150
  param.decorators.forEach(d => this.visit(d));
163
151
  }
164
152
  this.visitType(node.returnType);
165
153
  this.visitType(node.typeParameters);
166
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visitChildren(node.body);
167
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").close(node);
154
+ this.#referencer.visitChildren(node.body);
155
+ this.#referencer.close(node);
168
156
  }
169
157
  visitPropertyBase(node) {
170
158
  if (node.computed) {
171
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node.key);
159
+ this.#referencer.visit(node.key);
172
160
  }
173
161
  if (node.value) {
174
162
  if (node.type === types_1.AST_NODE_TYPES.PropertyDefinition ||
175
163
  node.type === types_1.AST_NODE_TYPES.AccessorProperty) {
176
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").scopeManager.nestClassFieldInitializerScope(node.value);
164
+ this.#referencer.scopeManager.nestClassFieldInitializerScope(node.value);
177
165
  }
178
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node.value);
166
+ this.#referencer.visit(node.value);
179
167
  if (node.type === types_1.AST_NODE_TYPES.PropertyDefinition ||
180
168
  node.type === types_1.AST_NODE_TYPES.AccessorProperty) {
181
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").close(node.value);
169
+ this.#referencer.close(node.value);
182
170
  }
183
171
  }
184
- node.decorators.forEach(d => __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(d));
172
+ node.decorators.forEach(d => this.#referencer.visit(d));
185
173
  }
186
174
  visitMethod(node) {
187
175
  if (node.computed) {
188
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node.key);
176
+ this.#referencer.visit(node.key);
189
177
  }
190
178
  if (node.value.type === types_1.AST_NODE_TYPES.FunctionExpression) {
191
179
  this.visitMethodFunction(node.value, node);
192
180
  }
193
181
  else {
194
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node.value);
182
+ this.#referencer.visit(node.value);
195
183
  }
196
- node.decorators.forEach(d => __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(d));
184
+ node.decorators.forEach(d => this.#referencer.visit(d));
197
185
  }
198
186
  visitType(node) {
199
187
  if (!node) {
200
188
  return;
201
189
  }
202
- TypeVisitor_1.TypeVisitor.visit(__classPrivateFieldGet(this, _ClassVisitor_referencer, "f"), node);
190
+ TypeVisitor_1.TypeVisitor.visit(this.#referencer, node);
203
191
  }
204
192
  /////////////////////
205
193
  // Visit selectors //
@@ -228,19 +216,21 @@ class ClassVisitor extends Visitor_1.Visitor {
228
216
  this.visitPropertyBase(node);
229
217
  }
230
218
  Identifier(node) {
231
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").visit(node);
219
+ this.#referencer.visit(node);
232
220
  }
233
221
  PrivateIdentifier() {
234
222
  // intentionally skip
235
223
  }
224
+ TSIndexSignature(node) {
225
+ this.visitType(node);
226
+ }
236
227
  StaticBlock(node) {
237
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").scopeManager.nestClassStaticBlockScope(node);
228
+ this.#referencer.scopeManager.nestClassStaticBlockScope(node);
238
229
  node.body.forEach(b => this.visit(b));
239
- __classPrivateFieldGet(this, _ClassVisitor_referencer, "f").close(node);
230
+ this.#referencer.close(node);
240
231
  }
241
232
  }
242
233
  exports.ClassVisitor = ClassVisitor;
243
- _ClassVisitor_classNode = new WeakMap(), _ClassVisitor_referencer = new WeakMap();
244
234
  /**
245
235
  * Only if key is one of [identifier, string, number], ts will combine metadata of accessors .
246
236
  * class A {
@@ -1 +1 @@
1
- {"version":3,"file":"ClassVisitor.js","sourceRoot":"","sources":["../../src/referencer/ClassVisitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClassVisitor.js","sourceRoot":"","sources":["../../src/referencer/ClassVisitor.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,28 @@
1
1
  "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _ExportVisitor_referencer, _ExportVisitor_exportNode;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.ExportVisitor = void 0;
16
4
  const types_1 = require("@typescript-eslint/types");
17
5
  const Visitor_1 = require("./Visitor");
18
6
  class ExportVisitor extends Visitor_1.Visitor {
7
+ #referencer;
8
+ #exportNode;
19
9
  constructor(node, referencer) {
20
10
  super(referencer);
21
- _ExportVisitor_referencer.set(this, void 0);
22
- _ExportVisitor_exportNode.set(this, void 0);
23
- __classPrivateFieldSet(this, _ExportVisitor_exportNode, node, "f");
24
- __classPrivateFieldSet(this, _ExportVisitor_referencer, referencer, "f");
11
+ this.#exportNode = node;
12
+ this.#referencer = referencer;
25
13
  }
26
14
  static visit(referencer, node) {
27
15
  const exportReferencer = new ExportVisitor(node, referencer);
28
16
  exportReferencer.visit(node);
29
17
  }
30
18
  Identifier(node) {
31
- if (__classPrivateFieldGet(this, _ExportVisitor_exportNode, "f").exportKind === 'type') {
19
+ if (this.#exportNode.exportKind === 'type') {
32
20
  // export type { T };
33
21
  // type exports can only reference types
34
- __classPrivateFieldGet(this, _ExportVisitor_referencer, "f").currentScope().referenceType(node);
22
+ this.#referencer.currentScope().referenceType(node);
35
23
  }
36
24
  else {
37
- __classPrivateFieldGet(this, _ExportVisitor_referencer, "f").currentScope().referenceDualValueType(node);
25
+ this.#referencer.currentScope().referenceDualValueType(node);
38
26
  }
39
27
  }
40
28
  ExportDefaultDeclaration(node) {
@@ -72,7 +60,7 @@ class ExportVisitor extends Visitor_1.Visitor {
72
60
  //
73
61
  // we can't let this fall through to the Identifier selector because the exportKind is on this node
74
62
  // and we don't have access to the `.parent` during scope analysis
75
- __classPrivateFieldGet(this, _ExportVisitor_referencer, "f").currentScope().referenceType(node.local);
63
+ this.#referencer.currentScope().referenceType(node.local);
76
64
  }
77
65
  else {
78
66
  this.visit(node.local);
@@ -80,5 +68,4 @@ class ExportVisitor extends Visitor_1.Visitor {
80
68
  }
81
69
  }
82
70
  exports.ExportVisitor = ExportVisitor;
83
- _ExportVisitor_referencer = new WeakMap(), _ExportVisitor_exportNode = new WeakMap();
84
71
  //# sourceMappingURL=ExportVisitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExportVisitor.js","sourceRoot":"","sources":["../../src/referencer/ExportVisitor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,oDAA0D;AAG1D,uCAAoC;AAOpC,MAAM,aAAc,SAAQ,iBAAO;IAIjC,YAAY,IAAgB,EAAE,UAAsB;QAClD,KAAK,CAAC,UAAU,CAAC,CAAC;QAJX,4CAAwB;QACxB,4CAAwB;QAI/B,uBAAA,IAAI,6BAAe,IAAI,MAAA,CAAC;QACxB,uBAAA,IAAI,6BAAe,UAAU,MAAA,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAsB,EAAE,IAAgB;QACnD,MAAM,gBAAgB,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7D,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,UAAU,CAAC,IAAyB;QAC5C,IAAI,uBAAA,IAAI,iCAAY,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YAC3C,qBAAqB;YACrB,wCAAwC;YACxC,uBAAA,IAAI,iCAAY,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,uBAAA,IAAI,iCAAY,CAAC,YAAY,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAES,wBAAwB,CAChC,IAAuC;QAEvC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE,CAAC;YACxD,oBAAoB;YACpB,qCAAqC;YACrC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,sBAAsB;YACtB,MAAM;YACN,+GAA+G;QACjH,CAAC;IACH,CAAC;IAES,sBAAsB,CAC9B,IAAqC;QAErC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,yBAAyB;YACzB,0EAA0E;YAC1E,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,gBAAgB;YAChB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,6EAA6E;QAC/E,CAAC;IACH,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YAC/B,qBAAqB;YACrB,wCAAwC;YACxC,EAAE;YACF,mGAAmG;YACnG,kEAAkE;YAClE,uBAAA,IAAI,iCAAY,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;CACF;AAEQ,sCAAa"}
1
+ {"version":3,"file":"ExportVisitor.js","sourceRoot":"","sources":["../../src/referencer/ExportVisitor.ts"],"names":[],"mappings":";;;AACA,oDAA0D;AAG1D,uCAAoC;AAOpC,MAAM,aAAc,SAAQ,iBAAO;IACxB,WAAW,CAAa;IACxB,WAAW,CAAa;IAEjC,YAAY,IAAgB,EAAE,UAAsB;QAClD,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAsB,EAAE,IAAgB;QACnD,MAAM,gBAAgB,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7D,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,UAAU,CAAC,IAAyB;QAC5C,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YAC3C,qBAAqB;YACrB,wCAAwC;YACxC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAES,wBAAwB,CAChC,IAAuC;QAEvC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE,CAAC;YACxD,oBAAoB;YACpB,qCAAqC;YACrC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,sBAAsB;YACtB,MAAM;YACN,+GAA+G;QACjH,CAAC;IACH,CAAC;IAES,sBAAsB,CAC9B,IAAqC;QAErC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,yBAAyB;YACzB,0EAA0E;YAC1E,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,gBAAgB;YAChB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,6EAA6E;QAC/E,CAAC;IACH,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YAC/B,qBAAqB;YACrB,wCAAwC;YACxC,EAAE;YACF,mGAAmG;YACnG,kEAAkE;YAClE,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;CACF;AAEQ,sCAAa"}
@@ -1,36 +1,24 @@
1
1
  "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _ImportVisitor_declaration, _ImportVisitor_referencer;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.ImportVisitor = void 0;
16
4
  const definition_1 = require("../definition");
17
5
  const Visitor_1 = require("./Visitor");
18
6
  class ImportVisitor extends Visitor_1.Visitor {
7
+ #declaration;
8
+ #referencer;
19
9
  constructor(declaration, referencer) {
20
10
  super(referencer);
21
- _ImportVisitor_declaration.set(this, void 0);
22
- _ImportVisitor_referencer.set(this, void 0);
23
- __classPrivateFieldSet(this, _ImportVisitor_declaration, declaration, "f");
24
- __classPrivateFieldSet(this, _ImportVisitor_referencer, referencer, "f");
11
+ this.#declaration = declaration;
12
+ this.#referencer = referencer;
25
13
  }
26
14
  static visit(referencer, declaration) {
27
15
  const importReferencer = new ImportVisitor(declaration, referencer);
28
16
  importReferencer.visit(declaration);
29
17
  }
30
18
  visitImport(id, specifier) {
31
- __classPrivateFieldGet(this, _ImportVisitor_referencer, "f")
19
+ this.#referencer
32
20
  .currentScope()
33
- .defineIdentifier(id, new definition_1.ImportBindingDefinition(id, specifier, __classPrivateFieldGet(this, _ImportVisitor_declaration, "f")));
21
+ .defineIdentifier(id, new definition_1.ImportBindingDefinition(id, specifier, this.#declaration));
34
22
  }
35
23
  ImportNamespaceSpecifier(node) {
36
24
  const local = node.local;
@@ -46,5 +34,4 @@ class ImportVisitor extends Visitor_1.Visitor {
46
34
  }
47
35
  }
48
36
  exports.ImportVisitor = ImportVisitor;
49
- _ImportVisitor_declaration = new WeakMap(), _ImportVisitor_referencer = new WeakMap();
50
37
  //# sourceMappingURL=ImportVisitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImportVisitor.js","sourceRoot":"","sources":["../../src/referencer/ImportVisitor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,8CAAwD;AAExD,uCAAoC;AAEpC,MAAM,aAAc,SAAQ,iBAAO;IAIjC,YAAY,WAAuC,EAAE,UAAsB;QACzE,KAAK,CAAC,UAAU,CAAC,CAAC;QAJX,6CAAyC;QACzC,4CAAwB;QAI/B,uBAAA,IAAI,8BAAgB,WAAW,MAAA,CAAC;QAChC,uBAAA,IAAI,6BAAe,UAAU,MAAA,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CACV,UAAsB,EACtB,WAAuC;QAEvC,MAAM,gBAAgB,GAAG,IAAI,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACpE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAES,WAAW,CACnB,EAAuB,EACvB,SAG4B;QAE5B,uBAAA,IAAI,iCAAY;aACb,YAAY,EAAE;aACd,gBAAgB,CACf,EAAE,EACF,IAAI,oCAAuB,CAAC,EAAE,EAAE,SAAS,EAAE,uBAAA,IAAI,kCAAa,CAAC,CAC9D,CAAC;IACN,CAAC;IAES,wBAAwB,CAChC,IAAuC;QAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,sBAAsB,CAC9B,IAAqC;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;CACF;AAEQ,sCAAa"}
1
+ {"version":3,"file":"ImportVisitor.js","sourceRoot":"","sources":["../../src/referencer/ImportVisitor.ts"],"names":[],"mappings":";;;AAEA,8CAAwD;AAExD,uCAAoC;AAEpC,MAAM,aAAc,SAAQ,iBAAO;IACxB,YAAY,CAA6B;IACzC,WAAW,CAAa;IAEjC,YAAY,WAAuC,EAAE,UAAsB;QACzE,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CACV,UAAsB,EACtB,WAAuC;QAEvC,MAAM,gBAAgB,GAAG,IAAI,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACpE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAES,WAAW,CACnB,EAAuB,EACvB,SAG4B;QAE5B,IAAI,CAAC,WAAW;aACb,YAAY,EAAE;aACd,gBAAgB,CACf,EAAE,EACF,IAAI,oCAAuB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAC9D,CAAC;IACN,CAAC;IAES,wBAAwB,CAChC,IAAuC;QAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,sBAAsB,CAC9B,IAAqC;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;CACF;AAEQ,sCAAa"}
@@ -1,16 +1,4 @@
1
1
  "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _PatternVisitor_rootPattern, _PatternVisitor_callback, _PatternVisitor_assignments, _PatternVisitor_restElements;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.PatternVisitor = void 0;
16
4
  const types_1 = require("@typescript-eslint/types");
@@ -25,15 +13,15 @@ class PatternVisitor extends VisitorBase_1.VisitorBase {
25
13
  nodeType === types_1.AST_NODE_TYPES.RestElement ||
26
14
  nodeType === types_1.AST_NODE_TYPES.AssignmentPattern);
27
15
  }
16
+ #rootPattern;
17
+ #callback;
18
+ #assignments = [];
19
+ rightHandNodes = [];
20
+ #restElements = [];
28
21
  constructor(options, rootPattern, callback) {
29
22
  super(options);
30
- _PatternVisitor_rootPattern.set(this, void 0);
31
- _PatternVisitor_callback.set(this, void 0);
32
- _PatternVisitor_assignments.set(this, []);
33
- this.rightHandNodes = [];
34
- _PatternVisitor_restElements.set(this, []);
35
- __classPrivateFieldSet(this, _PatternVisitor_rootPattern, rootPattern, "f");
36
- __classPrivateFieldSet(this, _PatternVisitor_callback, callback, "f");
23
+ this.#rootPattern = rootPattern;
24
+ this.#callback = callback;
37
25
  }
38
26
  ArrayExpression(node) {
39
27
  node.elements.forEach(this.visit, this);
@@ -44,16 +32,16 @@ class PatternVisitor extends VisitorBase_1.VisitorBase {
44
32
  }
45
33
  }
46
34
  AssignmentExpression(node) {
47
- __classPrivateFieldGet(this, _PatternVisitor_assignments, "f").push(node);
35
+ this.#assignments.push(node);
48
36
  this.visit(node.left);
49
37
  this.rightHandNodes.push(node.right);
50
- __classPrivateFieldGet(this, _PatternVisitor_assignments, "f").pop();
38
+ this.#assignments.pop();
51
39
  }
52
40
  AssignmentPattern(pattern) {
53
- __classPrivateFieldGet(this, _PatternVisitor_assignments, "f").push(pattern);
41
+ this.#assignments.push(pattern);
54
42
  this.visit(pattern.left);
55
43
  this.rightHandNodes.push(pattern.right);
56
- __classPrivateFieldGet(this, _PatternVisitor_assignments, "f").pop();
44
+ this.#assignments.pop();
57
45
  }
58
46
  CallExpression(node) {
59
47
  // arguments are right hand nodes.
@@ -66,11 +54,11 @@ class PatternVisitor extends VisitorBase_1.VisitorBase {
66
54
  // don't visit any decorators when exploring a pattern
67
55
  }
68
56
  Identifier(pattern) {
69
- const lastRestElement = __classPrivateFieldGet(this, _PatternVisitor_restElements, "f").at(-1);
70
- __classPrivateFieldGet(this, _PatternVisitor_callback, "f").call(this, pattern, {
71
- topLevel: pattern === __classPrivateFieldGet(this, _PatternVisitor_rootPattern, "f"),
57
+ const lastRestElement = this.#restElements.at(-1);
58
+ this.#callback(pattern, {
59
+ topLevel: pattern === this.#rootPattern,
72
60
  rest: lastRestElement?.argument === pattern,
73
- assignments: __classPrivateFieldGet(this, _PatternVisitor_assignments, "f"),
61
+ assignments: this.#assignments,
74
62
  });
75
63
  }
76
64
  MemberExpression(node) {
@@ -92,9 +80,9 @@ class PatternVisitor extends VisitorBase_1.VisitorBase {
92
80
  this.visit(property.value);
93
81
  }
94
82
  RestElement(pattern) {
95
- __classPrivateFieldGet(this, _PatternVisitor_restElements, "f").push(pattern);
83
+ this.#restElements.push(pattern);
96
84
  this.visit(pattern.argument);
97
- __classPrivateFieldGet(this, _PatternVisitor_restElements, "f").pop();
85
+ this.#restElements.pop();
98
86
  }
99
87
  SpreadElement(node) {
100
88
  this.visit(node.argument);
@@ -104,5 +92,4 @@ class PatternVisitor extends VisitorBase_1.VisitorBase {
104
92
  }
105
93
  }
106
94
  exports.PatternVisitor = PatternVisitor;
107
- _PatternVisitor_rootPattern = new WeakMap(), _PatternVisitor_callback = new WeakMap(), _PatternVisitor_assignments = new WeakMap(), _PatternVisitor_restElements = new WeakMap();
108
95
  //# sourceMappingURL=PatternVisitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PatternVisitor.js","sourceRoot":"","sources":["../../src/referencer/PatternVisitor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,oDAA0D;AAG1D,+CAA4C;AAY5C,MAAM,cAAe,SAAQ,yBAAW;IAC/B,MAAM,CAAC,SAAS,CACrB,IAAmB;QAQnB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAE3B,OAAO,CACL,QAAQ,KAAK,sBAAc,CAAC,UAAU;YACtC,QAAQ,KAAK,sBAAc,CAAC,aAAa;YACzC,QAAQ,KAAK,sBAAc,CAAC,YAAY;YACxC,QAAQ,KAAK,sBAAc,CAAC,aAAa;YACzC,QAAQ,KAAK,sBAAc,CAAC,WAAW;YACvC,QAAQ,KAAK,sBAAc,CAAC,iBAAiB,CAC9C,CAAC;IACJ,CAAC;IAWD,YACE,OAA8B,EAC9B,WAA0B,EAC1B,QAAgC;QAEhC,KAAK,CAAC,OAAO,CAAC,CAAC;QAdR,8CAA4B;QAC5B,2CAAkC;QAClC,sCAGH,EAAE,EAAC;QACO,mBAAc,GAAoB,EAAE,CAAC;QAC5C,uCAAwC,EAAE,EAAC;QAQlD,uBAAA,IAAI,+BAAgB,WAAW,MAAA,CAAC;QAChC,uBAAA,IAAI,4BAAa,QAAQ,MAAA,CAAC;IAC5B,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAES,YAAY,CAAC,OAA8B;QACnD,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAES,oBAAoB,CAAC,IAAmC;QAChE,uBAAA,IAAI,mCAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,uBAAA,IAAI,mCAAa,CAAC,GAAG,EAAE,CAAC;IAC1B,CAAC;IAES,iBAAiB,CAAC,OAAmC;QAC7D,uBAAA,IAAI,mCAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACxC,uBAAA,IAAI,mCAAa,CAAC,GAAG,EAAE,CAAC;IAC1B,CAAC;IAES,cAAc,CAAC,IAA6B;QACpD,kCAAkC;QAClC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAES,SAAS;QACjB,sDAAsD;IACxD,CAAC;IAES,UAAU,CAAC,OAA4B;QAC/C,MAAM,eAAe,GAAG,uBAAA,IAAI,oCAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,uBAAA,IAAI,gCAAU,MAAd,IAAI,EAAW,OAAO,EAAE;YACtB,QAAQ,EAAE,OAAO,KAAK,uBAAA,IAAI,mCAAa;YACvC,IAAI,EAAE,eAAe,EAAE,QAAQ,KAAK,OAAO;YAC3C,WAAW,EAAE,uBAAA,IAAI,mCAAa;SAC/B,CAAC,CAAC;IACL,CAAC;IAES,gBAAgB,CAAC,IAA+B;QACxD,gDAAgD;QAChD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,kDAAkD;QAClD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAES,QAAQ,CAAC,QAA2B;QAC5C,gDAAgD;QAChD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAED,mDAAmD;QACnD,mHAAmH;QACnH,kEAAkE;QAClE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAES,WAAW,CAAC,OAA6B;QACjD,uBAAA,IAAI,oCAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7B,uBAAA,IAAI,oCAAc,CAAC,GAAG,EAAE,CAAC;IAC3B,CAAC;IAES,aAAa,CAAC,IAA4B;QAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAES,gBAAgB;QACxB,+BAA+B;IACjC,CAAC;CACF;AAEQ,wCAAc"}
1
+ {"version":3,"file":"PatternVisitor.js","sourceRoot":"","sources":["../../src/referencer/PatternVisitor.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,4 @@
1
1
  "use strict";
2
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
- };
7
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
- if (kind === "m") throw new TypeError("Private method is not writable");
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
- };
13
- var _Reference_flag, _Reference_referenceType;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.ReferenceTypeFlag = exports.ReferenceFlag = exports.Reference = void 0;
16
4
  const ID_1 = require("../ID");
@@ -30,78 +18,103 @@ var ReferenceTypeFlag;
30
18
  * A Reference represents a single occurrence of an identifier in code.
31
19
  */
32
20
  class Reference {
21
+ /**
22
+ * A unique ID for this instance - primarily used to help debugging and testing
23
+ */
24
+ $id = generator();
25
+ /**
26
+ * The read-write mode of the reference.
27
+ */
28
+ #flag;
29
+ /**
30
+ * Reference to the enclosing Scope.
31
+ * @public
32
+ */
33
+ from;
34
+ /**
35
+ * Identifier syntax node.
36
+ * @public
37
+ */
38
+ identifier;
39
+ /**
40
+ * `true` if this writing reference is a variable initializer or a default value.
41
+ * @public
42
+ */
43
+ init;
44
+ /**
45
+ * The {@link Variable} object that this reference refers to. If such variable was not defined, this is `null`.
46
+ * @public
47
+ */
48
+ resolved;
49
+ /**
50
+ * If reference is writeable, this is the node being written to it.
51
+ * @public
52
+ */
53
+ writeExpr;
54
+ maybeImplicitGlobal;
55
+ /**
56
+ * In some cases, a reference may be a type, value or both a type and value reference.
57
+ */
58
+ #referenceType;
33
59
  /**
34
60
  * True if this reference can reference types
35
61
  */
36
62
  get isTypeReference() {
37
- return (__classPrivateFieldGet(this, _Reference_referenceType, "f") & ReferenceTypeFlag.Type) !== 0;
63
+ return (this.#referenceType & ReferenceTypeFlag.Type) !== 0;
38
64
  }
39
65
  /**
40
66
  * True if this reference can reference values
41
67
  */
42
68
  get isValueReference() {
43
- return (__classPrivateFieldGet(this, _Reference_referenceType, "f") & ReferenceTypeFlag.Value) !== 0;
69
+ return (this.#referenceType & ReferenceTypeFlag.Value) !== 0;
44
70
  }
45
71
  constructor(identifier, scope, flag, writeExpr, maybeImplicitGlobal, init, referenceType = ReferenceTypeFlag.Value) {
46
- /**
47
- * A unique ID for this instance - primarily used to help debugging and testing
48
- */
49
- this.$id = generator();
50
- /**
51
- * The read-write mode of the reference.
52
- */
53
- _Reference_flag.set(this, void 0);
54
- /**
55
- * In some cases, a reference may be a type, value or both a type and value reference.
56
- */
57
- _Reference_referenceType.set(this, void 0);
58
72
  this.identifier = identifier;
59
73
  this.from = scope;
60
74
  this.resolved = null;
61
- __classPrivateFieldSet(this, _Reference_flag, flag, "f");
75
+ this.#flag = flag;
62
76
  if (this.isWrite()) {
63
77
  this.writeExpr = writeExpr;
64
78
  this.init = init;
65
79
  }
66
80
  this.maybeImplicitGlobal = maybeImplicitGlobal;
67
- __classPrivateFieldSet(this, _Reference_referenceType, referenceType, "f");
81
+ this.#referenceType = referenceType;
68
82
  }
69
83
  /**
70
84
  * Whether the reference is writeable.
71
85
  * @public
72
86
  */
73
87
  isWrite() {
74
- return !!(__classPrivateFieldGet(this, _Reference_flag, "f") & ReferenceFlag.Write);
88
+ return !!(this.#flag & ReferenceFlag.Write);
75
89
  }
76
90
  /**
77
91
  * Whether the reference is readable.
78
92
  * @public
79
93
  */
80
94
  isRead() {
81
- return !!(__classPrivateFieldGet(this, _Reference_flag, "f") & ReferenceFlag.Read);
95
+ return !!(this.#flag & ReferenceFlag.Read);
82
96
  }
83
97
  /**
84
98
  * Whether the reference is read-only.
85
99
  * @public
86
100
  */
87
101
  isReadOnly() {
88
- return __classPrivateFieldGet(this, _Reference_flag, "f") === ReferenceFlag.Read;
102
+ return this.#flag === ReferenceFlag.Read;
89
103
  }
90
104
  /**
91
105
  * Whether the reference is write-only.
92
106
  * @public
93
107
  */
94
108
  isWriteOnly() {
95
- return __classPrivateFieldGet(this, _Reference_flag, "f") === ReferenceFlag.Write;
109
+ return this.#flag === ReferenceFlag.Write;
96
110
  }
97
111
  /**
98
112
  * Whether the reference is read-write.
99
113
  * @public
100
114
  */
101
115
  isReadWrite() {
102
- return __classPrivateFieldGet(this, _Reference_flag, "f") === ReferenceFlag.ReadWrite;
116
+ return this.#flag === ReferenceFlag.ReadWrite;
103
117
  }
104
118
  }
105
119
  exports.Reference = Reference;
106
- _Reference_flag = new WeakMap(), _Reference_referenceType = new WeakMap();
107
120
  //# sourceMappingURL=Reference.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Reference.js","sourceRoot":"","sources":["../../src/referencer/Reference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,8BAA0C;AAI1C,IAAK,aAIJ;AAJD,WAAK,aAAa;IAChB,iDAAU,CAAA;IACV,mDAAW,CAAA;IACX,2DAAe,CAAA;AACjB,CAAC,EAJI,aAAa,6BAAb,aAAa,QAIjB;AAQD,MAAM,SAAS,GAAG,IAAA,sBAAiB,GAAE,CAAC;AAEtC,IAAK,iBAGJ;AAHD,WAAK,iBAAiB;IACpB,2DAAW,CAAA;IACX,yDAAU,CAAA;AACZ,CAAC,EAHI,iBAAiB,iCAAjB,iBAAiB,QAGrB;AAED;;GAEG;AACH,MAAM,SAAS;IA0Cb;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,CAAC,uBAAA,IAAI,gCAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACzB,OAAO,CAAC,uBAAA,IAAI,gCAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,YACE,UAAwD,EACxD,KAAY,EACZ,IAAmB,EACnB,SAAgC,EAChC,mBAAoD,EACpD,IAAc,EACd,aAAa,GAAG,iBAAiB,CAAC,KAAK;QA9DzC;;WAEG;QACa,QAAG,GAAW,SAAS,EAAE,CAAC;QAC1C;;WAEG;QACM,kCAAqB;QA6B9B;;WAEG;QACM,2CAAkC;QAyBzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,uBAAA,IAAI,mBAAS,IAAI,MAAA,CAAC;QAElB,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,uBAAA,IAAI,4BAAkB,aAAa,MAAA,CAAC;IACtC,CAAC;IAED;;;OAGG;IACI,OAAO;QACZ,OAAO,CAAC,CAAC,CAAC,uBAAA,IAAI,uBAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,CAAC,CAAC,CAAC,uBAAA,IAAI,uBAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACI,UAAU;QACf,OAAO,uBAAA,IAAI,uBAAM,KAAK,aAAa,CAAC,IAAI,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACI,WAAW;QAChB,OAAO,uBAAA,IAAI,uBAAM,KAAK,aAAa,CAAC,KAAK,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACI,WAAW;QAChB,OAAO,uBAAA,IAAI,uBAAM,KAAK,aAAa,CAAC,SAAS,CAAC;IAChD,CAAC;CACF;AAEQ,8BAAS"}
1
+ {"version":3,"file":"Reference.js","sourceRoot":"","sources":["../../src/referencer/Reference.ts"],"names":[],"mappings":";;;AAEA,8BAA0C;AAI1C,IAAK,aAIJ;AAJD,WAAK,aAAa;IAChB,iDAAU,CAAA;IACV,mDAAW,CAAA;IACX,2DAAe,CAAA;AACjB,CAAC,EAJI,aAAa,6BAAb,aAAa,QAIjB;AAQD,MAAM,SAAS,GAAG,IAAA,sBAAiB,GAAE,CAAC;AAEtC,IAAK,iBAGJ;AAHD,WAAK,iBAAiB;IACpB,2DAAW,CAAA;IACX,yDAAU,CAAA;AACZ,CAAC,EAHI,iBAAiB,iCAAjB,iBAAiB,QAGrB;AAED;;GAEG;AACH,MAAM,SAAS;IACb;;OAEG;IACa,GAAG,GAAW,SAAS,EAAE,CAAC;IAC1C;;OAEG;IACM,KAAK,CAAgB;IAC9B;;;OAGG;IACa,IAAI,CAAQ;IAC5B;;;OAGG;IACa,UAAU,CAA+C;IACzE;;;OAGG;IACa,IAAI,CAAW;IAC/B;;;OAGG;IACI,QAAQ,CAAkB;IACjC;;;OAGG;IACa,SAAS,CAAwB;IAEjC,mBAAmB,CAAkC;IAErE;;OAEG;IACM,cAAc,CAAoB;IAE3C;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,CAAC,IAAI,CAAC,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACzB,OAAO,CAAC,IAAI,CAAC,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,YACE,UAAwD,EACxD,KAAY,EACZ,IAAmB,EACnB,SAAgC,EAChC,mBAAoD,EACpD,IAAc,EACd,aAAa,GAAG,iBAAiB,CAAC,KAAK;QAEvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;IAED;;;OAGG;IACI,OAAO;QACZ,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACI,UAAU;QACf,OAAO,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,IAAI,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACI,WAAW;QAChB,OAAO,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACI,WAAW;QAChB,OAAO,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,SAAS,CAAC;IAChD,CAAC;CACF;AAEQ,8BAAS"}