1#![expect(clippy::match_same_arms)]
5
6use oxc_span::{GetSpanMut, Span};
7
8use crate::ast::js::*;
9use crate::ast::jsx::*;
10use crate::ast::literal::*;
11use crate::ast::ts::*;
12
13impl GetSpanMut for Program<'_> {
14 #[inline]
15 fn span_mut(&mut self) -> &mut Span {
16 &mut self.span
17 }
18}
19
20impl GetSpanMut for Expression<'_> {
21 fn span_mut(&mut self) -> &mut Span {
22 match self {
23 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
24 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
25 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
26 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
27 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
28 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
29 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
30 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
31 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
32 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
33 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
34 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
35 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
36 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
37 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
38 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
39 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
40 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
41 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
42 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
43 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
44 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
45 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
46 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
47 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
48 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
49 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
50 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
51 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
52 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
53 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
54 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
55 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
56 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
57 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
58 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
59 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
60 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
61 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
62 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
63 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
64 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
65 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
66 }
67 }
68}
69
70impl GetSpanMut for IdentifierName<'_> {
71 #[inline]
72 fn span_mut(&mut self) -> &mut Span {
73 &mut self.span
74 }
75}
76
77impl GetSpanMut for IdentifierReference<'_> {
78 #[inline]
79 fn span_mut(&mut self) -> &mut Span {
80 &mut self.span
81 }
82}
83
84impl GetSpanMut for BindingIdentifier<'_> {
85 #[inline]
86 fn span_mut(&mut self) -> &mut Span {
87 &mut self.span
88 }
89}
90
91impl GetSpanMut for LabelIdentifier<'_> {
92 #[inline]
93 fn span_mut(&mut self) -> &mut Span {
94 &mut self.span
95 }
96}
97
98impl GetSpanMut for ThisExpression {
99 #[inline]
100 fn span_mut(&mut self) -> &mut Span {
101 &mut self.span
102 }
103}
104
105impl GetSpanMut for ArrayExpression<'_> {
106 #[inline]
107 fn span_mut(&mut self) -> &mut Span {
108 &mut self.span
109 }
110}
111
112impl GetSpanMut for ArrayExpressionElement<'_> {
113 fn span_mut(&mut self) -> &mut Span {
114 match self {
115 Self::SpreadElement(it) => GetSpanMut::span_mut(&mut **it),
116 Self::Elision(it) => GetSpanMut::span_mut(it),
117 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
118 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
119 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
120 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
121 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
122 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
123 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
124 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
125 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
126 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
127 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
128 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
129 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
130 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
131 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
132 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
133 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
134 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
135 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
136 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
137 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
138 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
139 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
140 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
141 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
142 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
143 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
144 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
145 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
146 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
147 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
148 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
149 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
150 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
151 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
152 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
153 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
154 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
155 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
156 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
157 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
158 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
159 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
160 }
161 }
162}
163
164impl GetSpanMut for Elision {
165 #[inline]
166 fn span_mut(&mut self) -> &mut Span {
167 &mut self.span
168 }
169}
170
171impl GetSpanMut for ObjectExpression<'_> {
172 #[inline]
173 fn span_mut(&mut self) -> &mut Span {
174 &mut self.span
175 }
176}
177
178impl GetSpanMut for ObjectPropertyKind<'_> {
179 fn span_mut(&mut self) -> &mut Span {
180 match self {
181 Self::ObjectProperty(it) => GetSpanMut::span_mut(&mut **it),
182 Self::SpreadProperty(it) => GetSpanMut::span_mut(&mut **it),
183 }
184 }
185}
186
187impl GetSpanMut for ObjectProperty<'_> {
188 #[inline]
189 fn span_mut(&mut self) -> &mut Span {
190 &mut self.span
191 }
192}
193
194impl GetSpanMut for PropertyKey<'_> {
195 fn span_mut(&mut self) -> &mut Span {
196 match self {
197 Self::StaticIdentifier(it) => GetSpanMut::span_mut(&mut **it),
198 Self::PrivateIdentifier(it) => GetSpanMut::span_mut(&mut **it),
199 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
200 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
201 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
202 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
203 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
204 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
205 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
206 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
207 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
208 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
209 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
210 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
211 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
212 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
213 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
214 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
215 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
216 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
217 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
218 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
219 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
220 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
221 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
222 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
223 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
224 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
225 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
226 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
227 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
228 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
229 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
230 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
231 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
232 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
233 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
234 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
235 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
236 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
237 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
238 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
239 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
240 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
241 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
242 }
243 }
244}
245
246impl GetSpanMut for TemplateLiteral<'_> {
247 #[inline]
248 fn span_mut(&mut self) -> &mut Span {
249 &mut self.span
250 }
251}
252
253impl GetSpanMut for TaggedTemplateExpression<'_> {
254 #[inline]
255 fn span_mut(&mut self) -> &mut Span {
256 &mut self.span
257 }
258}
259
260impl GetSpanMut for TemplateElement<'_> {
261 #[inline]
262 fn span_mut(&mut self) -> &mut Span {
263 &mut self.span
264 }
265}
266
267impl GetSpanMut for MemberExpression<'_> {
268 fn span_mut(&mut self) -> &mut Span {
269 match self {
270 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
271 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
272 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
273 }
274 }
275}
276
277impl GetSpanMut for ComputedMemberExpression<'_> {
278 #[inline]
279 fn span_mut(&mut self) -> &mut Span {
280 &mut self.span
281 }
282}
283
284impl GetSpanMut for StaticMemberExpression<'_> {
285 #[inline]
286 fn span_mut(&mut self) -> &mut Span {
287 &mut self.span
288 }
289}
290
291impl GetSpanMut for PrivateFieldExpression<'_> {
292 #[inline]
293 fn span_mut(&mut self) -> &mut Span {
294 &mut self.span
295 }
296}
297
298impl GetSpanMut for CallExpression<'_> {
299 #[inline]
300 fn span_mut(&mut self) -> &mut Span {
301 &mut self.span
302 }
303}
304
305impl GetSpanMut for NewExpression<'_> {
306 #[inline]
307 fn span_mut(&mut self) -> &mut Span {
308 &mut self.span
309 }
310}
311
312impl GetSpanMut for MetaProperty<'_> {
313 #[inline]
314 fn span_mut(&mut self) -> &mut Span {
315 &mut self.span
316 }
317}
318
319impl GetSpanMut for SpreadElement<'_> {
320 #[inline]
321 fn span_mut(&mut self) -> &mut Span {
322 &mut self.span
323 }
324}
325
326impl GetSpanMut for Argument<'_> {
327 fn span_mut(&mut self) -> &mut Span {
328 match self {
329 Self::SpreadElement(it) => GetSpanMut::span_mut(&mut **it),
330 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
331 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
332 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
333 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
334 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
335 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
336 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
337 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
338 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
339 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
340 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
341 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
342 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
343 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
344 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
345 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
346 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
347 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
348 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
349 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
350 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
351 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
352 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
353 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
354 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
355 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
356 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
357 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
358 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
359 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
360 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
361 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
362 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
363 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
364 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
365 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
366 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
367 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
368 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
369 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
370 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
371 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
372 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
373 }
374 }
375}
376
377impl GetSpanMut for UpdateExpression<'_> {
378 #[inline]
379 fn span_mut(&mut self) -> &mut Span {
380 &mut self.span
381 }
382}
383
384impl GetSpanMut for UnaryExpression<'_> {
385 #[inline]
386 fn span_mut(&mut self) -> &mut Span {
387 &mut self.span
388 }
389}
390
391impl GetSpanMut for BinaryExpression<'_> {
392 #[inline]
393 fn span_mut(&mut self) -> &mut Span {
394 &mut self.span
395 }
396}
397
398impl GetSpanMut for PrivateInExpression<'_> {
399 #[inline]
400 fn span_mut(&mut self) -> &mut Span {
401 &mut self.span
402 }
403}
404
405impl GetSpanMut for LogicalExpression<'_> {
406 #[inline]
407 fn span_mut(&mut self) -> &mut Span {
408 &mut self.span
409 }
410}
411
412impl GetSpanMut for ConditionalExpression<'_> {
413 #[inline]
414 fn span_mut(&mut self) -> &mut Span {
415 &mut self.span
416 }
417}
418
419impl GetSpanMut for AssignmentExpression<'_> {
420 #[inline]
421 fn span_mut(&mut self) -> &mut Span {
422 &mut self.span
423 }
424}
425
426impl GetSpanMut for AssignmentTarget<'_> {
427 fn span_mut(&mut self) -> &mut Span {
428 match self {
429 Self::AssignmentTargetIdentifier(it) => GetSpanMut::span_mut(&mut **it),
430 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
431 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
432 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
433 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
434 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
435 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
436 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
437 Self::ArrayAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
438 Self::ObjectAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
439 }
440 }
441}
442
443impl GetSpanMut for SimpleAssignmentTarget<'_> {
444 fn span_mut(&mut self) -> &mut Span {
445 match self {
446 Self::AssignmentTargetIdentifier(it) => GetSpanMut::span_mut(&mut **it),
447 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
448 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
449 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
450 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
451 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
452 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
453 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
454 }
455 }
456}
457
458impl GetSpanMut for AssignmentTargetPattern<'_> {
459 fn span_mut(&mut self) -> &mut Span {
460 match self {
461 Self::ArrayAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
462 Self::ObjectAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
463 }
464 }
465}
466
467impl GetSpanMut for ArrayAssignmentTarget<'_> {
468 #[inline]
469 fn span_mut(&mut self) -> &mut Span {
470 &mut self.span
471 }
472}
473
474impl GetSpanMut for ObjectAssignmentTarget<'_> {
475 #[inline]
476 fn span_mut(&mut self) -> &mut Span {
477 &mut self.span
478 }
479}
480
481impl GetSpanMut for AssignmentTargetRest<'_> {
482 #[inline]
483 fn span_mut(&mut self) -> &mut Span {
484 &mut self.span
485 }
486}
487
488impl GetSpanMut for AssignmentTargetMaybeDefault<'_> {
489 fn span_mut(&mut self) -> &mut Span {
490 match self {
491 Self::AssignmentTargetWithDefault(it) => GetSpanMut::span_mut(&mut **it),
492 Self::AssignmentTargetIdentifier(it) => GetSpanMut::span_mut(&mut **it),
493 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
494 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
495 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
496 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
497 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
498 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
499 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
500 Self::ArrayAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
501 Self::ObjectAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
502 }
503 }
504}
505
506impl GetSpanMut for AssignmentTargetWithDefault<'_> {
507 #[inline]
508 fn span_mut(&mut self) -> &mut Span {
509 &mut self.span
510 }
511}
512
513impl GetSpanMut for AssignmentTargetProperty<'_> {
514 fn span_mut(&mut self) -> &mut Span {
515 match self {
516 Self::AssignmentTargetPropertyIdentifier(it) => GetSpanMut::span_mut(&mut **it),
517 Self::AssignmentTargetPropertyProperty(it) => GetSpanMut::span_mut(&mut **it),
518 }
519 }
520}
521
522impl GetSpanMut for AssignmentTargetPropertyIdentifier<'_> {
523 #[inline]
524 fn span_mut(&mut self) -> &mut Span {
525 &mut self.span
526 }
527}
528
529impl GetSpanMut for AssignmentTargetPropertyProperty<'_> {
530 #[inline]
531 fn span_mut(&mut self) -> &mut Span {
532 &mut self.span
533 }
534}
535
536impl GetSpanMut for SequenceExpression<'_> {
537 #[inline]
538 fn span_mut(&mut self) -> &mut Span {
539 &mut self.span
540 }
541}
542
543impl GetSpanMut for Super {
544 #[inline]
545 fn span_mut(&mut self) -> &mut Span {
546 &mut self.span
547 }
548}
549
550impl GetSpanMut for AwaitExpression<'_> {
551 #[inline]
552 fn span_mut(&mut self) -> &mut Span {
553 &mut self.span
554 }
555}
556
557impl GetSpanMut for ChainExpression<'_> {
558 #[inline]
559 fn span_mut(&mut self) -> &mut Span {
560 &mut self.span
561 }
562}
563
564impl GetSpanMut for ChainElement<'_> {
565 fn span_mut(&mut self) -> &mut Span {
566 match self {
567 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
568 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
569 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
570 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
571 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
572 }
573 }
574}
575
576impl GetSpanMut for ParenthesizedExpression<'_> {
577 #[inline]
578 fn span_mut(&mut self) -> &mut Span {
579 &mut self.span
580 }
581}
582
583impl GetSpanMut for Statement<'_> {
584 fn span_mut(&mut self) -> &mut Span {
585 match self {
586 Self::BlockStatement(it) => GetSpanMut::span_mut(&mut **it),
587 Self::BreakStatement(it) => GetSpanMut::span_mut(&mut **it),
588 Self::ContinueStatement(it) => GetSpanMut::span_mut(&mut **it),
589 Self::DebuggerStatement(it) => GetSpanMut::span_mut(&mut **it),
590 Self::DoWhileStatement(it) => GetSpanMut::span_mut(&mut **it),
591 Self::EmptyStatement(it) => GetSpanMut::span_mut(&mut **it),
592 Self::ExpressionStatement(it) => GetSpanMut::span_mut(&mut **it),
593 Self::ForInStatement(it) => GetSpanMut::span_mut(&mut **it),
594 Self::ForOfStatement(it) => GetSpanMut::span_mut(&mut **it),
595 Self::ForStatement(it) => GetSpanMut::span_mut(&mut **it),
596 Self::IfStatement(it) => GetSpanMut::span_mut(&mut **it),
597 Self::LabeledStatement(it) => GetSpanMut::span_mut(&mut **it),
598 Self::ReturnStatement(it) => GetSpanMut::span_mut(&mut **it),
599 Self::SwitchStatement(it) => GetSpanMut::span_mut(&mut **it),
600 Self::ThrowStatement(it) => GetSpanMut::span_mut(&mut **it),
601 Self::TryStatement(it) => GetSpanMut::span_mut(&mut **it),
602 Self::WhileStatement(it) => GetSpanMut::span_mut(&mut **it),
603 Self::WithStatement(it) => GetSpanMut::span_mut(&mut **it),
604 Self::VariableDeclaration(it) => GetSpanMut::span_mut(&mut **it),
605 Self::FunctionDeclaration(it) => GetSpanMut::span_mut(&mut **it),
606 Self::ClassDeclaration(it) => GetSpanMut::span_mut(&mut **it),
607 Self::TSTypeAliasDeclaration(it) => GetSpanMut::span_mut(&mut **it),
608 Self::TSInterfaceDeclaration(it) => GetSpanMut::span_mut(&mut **it),
609 Self::TSEnumDeclaration(it) => GetSpanMut::span_mut(&mut **it),
610 Self::TSModuleDeclaration(it) => GetSpanMut::span_mut(&mut **it),
611 Self::TSImportEqualsDeclaration(it) => GetSpanMut::span_mut(&mut **it),
612 Self::ImportDeclaration(it) => GetSpanMut::span_mut(&mut **it),
613 Self::ExportAllDeclaration(it) => GetSpanMut::span_mut(&mut **it),
614 Self::ExportDefaultDeclaration(it) => GetSpanMut::span_mut(&mut **it),
615 Self::ExportNamedDeclaration(it) => GetSpanMut::span_mut(&mut **it),
616 Self::TSExportAssignment(it) => GetSpanMut::span_mut(&mut **it),
617 Self::TSNamespaceExportDeclaration(it) => GetSpanMut::span_mut(&mut **it),
618 }
619 }
620}
621
622impl GetSpanMut for Directive<'_> {
623 #[inline]
624 fn span_mut(&mut self) -> &mut Span {
625 &mut self.span
626 }
627}
628
629impl GetSpanMut for Hashbang<'_> {
630 #[inline]
631 fn span_mut(&mut self) -> &mut Span {
632 &mut self.span
633 }
634}
635
636impl GetSpanMut for BlockStatement<'_> {
637 #[inline]
638 fn span_mut(&mut self) -> &mut Span {
639 &mut self.span
640 }
641}
642
643impl GetSpanMut for Declaration<'_> {
644 fn span_mut(&mut self) -> &mut Span {
645 match self {
646 Self::VariableDeclaration(it) => GetSpanMut::span_mut(&mut **it),
647 Self::FunctionDeclaration(it) => GetSpanMut::span_mut(&mut **it),
648 Self::ClassDeclaration(it) => GetSpanMut::span_mut(&mut **it),
649 Self::TSTypeAliasDeclaration(it) => GetSpanMut::span_mut(&mut **it),
650 Self::TSInterfaceDeclaration(it) => GetSpanMut::span_mut(&mut **it),
651 Self::TSEnumDeclaration(it) => GetSpanMut::span_mut(&mut **it),
652 Self::TSModuleDeclaration(it) => GetSpanMut::span_mut(&mut **it),
653 Self::TSImportEqualsDeclaration(it) => GetSpanMut::span_mut(&mut **it),
654 }
655 }
656}
657
658impl GetSpanMut for VariableDeclaration<'_> {
659 #[inline]
660 fn span_mut(&mut self) -> &mut Span {
661 &mut self.span
662 }
663}
664
665impl GetSpanMut for VariableDeclarator<'_> {
666 #[inline]
667 fn span_mut(&mut self) -> &mut Span {
668 &mut self.span
669 }
670}
671
672impl GetSpanMut for EmptyStatement {
673 #[inline]
674 fn span_mut(&mut self) -> &mut Span {
675 &mut self.span
676 }
677}
678
679impl GetSpanMut for ExpressionStatement<'_> {
680 #[inline]
681 fn span_mut(&mut self) -> &mut Span {
682 &mut self.span
683 }
684}
685
686impl GetSpanMut for IfStatement<'_> {
687 #[inline]
688 fn span_mut(&mut self) -> &mut Span {
689 &mut self.span
690 }
691}
692
693impl GetSpanMut for DoWhileStatement<'_> {
694 #[inline]
695 fn span_mut(&mut self) -> &mut Span {
696 &mut self.span
697 }
698}
699
700impl GetSpanMut for WhileStatement<'_> {
701 #[inline]
702 fn span_mut(&mut self) -> &mut Span {
703 &mut self.span
704 }
705}
706
707impl GetSpanMut for ForStatement<'_> {
708 #[inline]
709 fn span_mut(&mut self) -> &mut Span {
710 &mut self.span
711 }
712}
713
714impl GetSpanMut for ForStatementInit<'_> {
715 fn span_mut(&mut self) -> &mut Span {
716 match self {
717 Self::VariableDeclaration(it) => GetSpanMut::span_mut(&mut **it),
718 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
719 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
720 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
721 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
722 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
723 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
724 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
725 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
726 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
727 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
728 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
729 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
730 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
731 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
732 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
733 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
734 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
735 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
736 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
737 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
738 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
739 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
740 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
741 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
742 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
743 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
744 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
745 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
746 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
747 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
748 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
749 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
750 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
751 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
752 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
753 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
754 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
755 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
756 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
757 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
758 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
759 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
760 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
761 }
762 }
763}
764
765impl GetSpanMut for ForInStatement<'_> {
766 #[inline]
767 fn span_mut(&mut self) -> &mut Span {
768 &mut self.span
769 }
770}
771
772impl GetSpanMut for ForStatementLeft<'_> {
773 fn span_mut(&mut self) -> &mut Span {
774 match self {
775 Self::VariableDeclaration(it) => GetSpanMut::span_mut(&mut **it),
776 Self::AssignmentTargetIdentifier(it) => GetSpanMut::span_mut(&mut **it),
777 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
778 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
779 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
780 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
781 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
782 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
783 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
784 Self::ArrayAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
785 Self::ObjectAssignmentTarget(it) => GetSpanMut::span_mut(&mut **it),
786 }
787 }
788}
789
790impl GetSpanMut for ForOfStatement<'_> {
791 #[inline]
792 fn span_mut(&mut self) -> &mut Span {
793 &mut self.span
794 }
795}
796
797impl GetSpanMut for ContinueStatement<'_> {
798 #[inline]
799 fn span_mut(&mut self) -> &mut Span {
800 &mut self.span
801 }
802}
803
804impl GetSpanMut for BreakStatement<'_> {
805 #[inline]
806 fn span_mut(&mut self) -> &mut Span {
807 &mut self.span
808 }
809}
810
811impl GetSpanMut for ReturnStatement<'_> {
812 #[inline]
813 fn span_mut(&mut self) -> &mut Span {
814 &mut self.span
815 }
816}
817
818impl GetSpanMut for WithStatement<'_> {
819 #[inline]
820 fn span_mut(&mut self) -> &mut Span {
821 &mut self.span
822 }
823}
824
825impl GetSpanMut for SwitchStatement<'_> {
826 #[inline]
827 fn span_mut(&mut self) -> &mut Span {
828 &mut self.span
829 }
830}
831
832impl GetSpanMut for SwitchCase<'_> {
833 #[inline]
834 fn span_mut(&mut self) -> &mut Span {
835 &mut self.span
836 }
837}
838
839impl GetSpanMut for LabeledStatement<'_> {
840 #[inline]
841 fn span_mut(&mut self) -> &mut Span {
842 &mut self.span
843 }
844}
845
846impl GetSpanMut for ThrowStatement<'_> {
847 #[inline]
848 fn span_mut(&mut self) -> &mut Span {
849 &mut self.span
850 }
851}
852
853impl GetSpanMut for TryStatement<'_> {
854 #[inline]
855 fn span_mut(&mut self) -> &mut Span {
856 &mut self.span
857 }
858}
859
860impl GetSpanMut for CatchClause<'_> {
861 #[inline]
862 fn span_mut(&mut self) -> &mut Span {
863 &mut self.span
864 }
865}
866
867impl GetSpanMut for CatchParameter<'_> {
868 #[inline]
869 fn span_mut(&mut self) -> &mut Span {
870 &mut self.span
871 }
872}
873
874impl GetSpanMut for DebuggerStatement {
875 #[inline]
876 fn span_mut(&mut self) -> &mut Span {
877 &mut self.span
878 }
879}
880
881impl GetSpanMut for BindingPattern<'_> {
882 #[inline]
883 fn span_mut(&mut self) -> &mut Span {
884 GetSpanMut::span_mut(&mut self.kind)
885 }
886}
887
888impl GetSpanMut for BindingPatternKind<'_> {
889 fn span_mut(&mut self) -> &mut Span {
890 match self {
891 Self::BindingIdentifier(it) => GetSpanMut::span_mut(&mut **it),
892 Self::ObjectPattern(it) => GetSpanMut::span_mut(&mut **it),
893 Self::ArrayPattern(it) => GetSpanMut::span_mut(&mut **it),
894 Self::AssignmentPattern(it) => GetSpanMut::span_mut(&mut **it),
895 }
896 }
897}
898
899impl GetSpanMut for AssignmentPattern<'_> {
900 #[inline]
901 fn span_mut(&mut self) -> &mut Span {
902 &mut self.span
903 }
904}
905
906impl GetSpanMut for ObjectPattern<'_> {
907 #[inline]
908 fn span_mut(&mut self) -> &mut Span {
909 &mut self.span
910 }
911}
912
913impl GetSpanMut for BindingProperty<'_> {
914 #[inline]
915 fn span_mut(&mut self) -> &mut Span {
916 &mut self.span
917 }
918}
919
920impl GetSpanMut for ArrayPattern<'_> {
921 #[inline]
922 fn span_mut(&mut self) -> &mut Span {
923 &mut self.span
924 }
925}
926
927impl GetSpanMut for BindingRestElement<'_> {
928 #[inline]
929 fn span_mut(&mut self) -> &mut Span {
930 &mut self.span
931 }
932}
933
934impl GetSpanMut for Function<'_> {
935 #[inline]
936 fn span_mut(&mut self) -> &mut Span {
937 &mut self.span
938 }
939}
940
941impl GetSpanMut for FormalParameters<'_> {
942 #[inline]
943 fn span_mut(&mut self) -> &mut Span {
944 &mut self.span
945 }
946}
947
948impl GetSpanMut for FormalParameter<'_> {
949 #[inline]
950 fn span_mut(&mut self) -> &mut Span {
951 &mut self.span
952 }
953}
954
955impl GetSpanMut for FunctionBody<'_> {
956 #[inline]
957 fn span_mut(&mut self) -> &mut Span {
958 &mut self.span
959 }
960}
961
962impl GetSpanMut for ArrowFunctionExpression<'_> {
963 #[inline]
964 fn span_mut(&mut self) -> &mut Span {
965 &mut self.span
966 }
967}
968
969impl GetSpanMut for YieldExpression<'_> {
970 #[inline]
971 fn span_mut(&mut self) -> &mut Span {
972 &mut self.span
973 }
974}
975
976impl GetSpanMut for Class<'_> {
977 #[inline]
978 fn span_mut(&mut self) -> &mut Span {
979 &mut self.span
980 }
981}
982
983impl GetSpanMut for ClassBody<'_> {
984 #[inline]
985 fn span_mut(&mut self) -> &mut Span {
986 &mut self.span
987 }
988}
989
990impl GetSpanMut for ClassElement<'_> {
991 fn span_mut(&mut self) -> &mut Span {
992 match self {
993 Self::StaticBlock(it) => GetSpanMut::span_mut(&mut **it),
994 Self::MethodDefinition(it) => GetSpanMut::span_mut(&mut **it),
995 Self::PropertyDefinition(it) => GetSpanMut::span_mut(&mut **it),
996 Self::AccessorProperty(it) => GetSpanMut::span_mut(&mut **it),
997 Self::TSIndexSignature(it) => GetSpanMut::span_mut(&mut **it),
998 }
999 }
1000}
1001
1002impl GetSpanMut for MethodDefinition<'_> {
1003 #[inline]
1004 fn span_mut(&mut self) -> &mut Span {
1005 &mut self.span
1006 }
1007}
1008
1009impl GetSpanMut for PropertyDefinition<'_> {
1010 #[inline]
1011 fn span_mut(&mut self) -> &mut Span {
1012 &mut self.span
1013 }
1014}
1015
1016impl GetSpanMut for PrivateIdentifier<'_> {
1017 #[inline]
1018 fn span_mut(&mut self) -> &mut Span {
1019 &mut self.span
1020 }
1021}
1022
1023impl GetSpanMut for StaticBlock<'_> {
1024 #[inline]
1025 fn span_mut(&mut self) -> &mut Span {
1026 &mut self.span
1027 }
1028}
1029
1030impl GetSpanMut for ModuleDeclaration<'_> {
1031 fn span_mut(&mut self) -> &mut Span {
1032 match self {
1033 Self::ImportDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1034 Self::ExportAllDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1035 Self::ExportDefaultDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1036 Self::ExportNamedDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1037 Self::TSExportAssignment(it) => GetSpanMut::span_mut(&mut **it),
1038 Self::TSNamespaceExportDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1039 }
1040 }
1041}
1042
1043impl GetSpanMut for AccessorProperty<'_> {
1044 #[inline]
1045 fn span_mut(&mut self) -> &mut Span {
1046 &mut self.span
1047 }
1048}
1049
1050impl GetSpanMut for ImportExpression<'_> {
1051 #[inline]
1052 fn span_mut(&mut self) -> &mut Span {
1053 &mut self.span
1054 }
1055}
1056
1057impl GetSpanMut for ImportDeclaration<'_> {
1058 #[inline]
1059 fn span_mut(&mut self) -> &mut Span {
1060 &mut self.span
1061 }
1062}
1063
1064impl GetSpanMut for ImportDeclarationSpecifier<'_> {
1065 fn span_mut(&mut self) -> &mut Span {
1066 match self {
1067 Self::ImportSpecifier(it) => GetSpanMut::span_mut(&mut **it),
1068 Self::ImportDefaultSpecifier(it) => GetSpanMut::span_mut(&mut **it),
1069 Self::ImportNamespaceSpecifier(it) => GetSpanMut::span_mut(&mut **it),
1070 }
1071 }
1072}
1073
1074impl GetSpanMut for ImportSpecifier<'_> {
1075 #[inline]
1076 fn span_mut(&mut self) -> &mut Span {
1077 &mut self.span
1078 }
1079}
1080
1081impl GetSpanMut for ImportDefaultSpecifier<'_> {
1082 #[inline]
1083 fn span_mut(&mut self) -> &mut Span {
1084 &mut self.span
1085 }
1086}
1087
1088impl GetSpanMut for ImportNamespaceSpecifier<'_> {
1089 #[inline]
1090 fn span_mut(&mut self) -> &mut Span {
1091 &mut self.span
1092 }
1093}
1094
1095impl GetSpanMut for WithClause<'_> {
1096 #[inline]
1097 fn span_mut(&mut self) -> &mut Span {
1098 &mut self.span
1099 }
1100}
1101
1102impl GetSpanMut for ImportAttribute<'_> {
1103 #[inline]
1104 fn span_mut(&mut self) -> &mut Span {
1105 &mut self.span
1106 }
1107}
1108
1109impl GetSpanMut for ImportAttributeKey<'_> {
1110 fn span_mut(&mut self) -> &mut Span {
1111 match self {
1112 Self::Identifier(it) => GetSpanMut::span_mut(it),
1113 Self::StringLiteral(it) => GetSpanMut::span_mut(it),
1114 }
1115 }
1116}
1117
1118impl GetSpanMut for ExportNamedDeclaration<'_> {
1119 #[inline]
1120 fn span_mut(&mut self) -> &mut Span {
1121 &mut self.span
1122 }
1123}
1124
1125impl GetSpanMut for ExportDefaultDeclaration<'_> {
1126 #[inline]
1127 fn span_mut(&mut self) -> &mut Span {
1128 &mut self.span
1129 }
1130}
1131
1132impl GetSpanMut for ExportAllDeclaration<'_> {
1133 #[inline]
1134 fn span_mut(&mut self) -> &mut Span {
1135 &mut self.span
1136 }
1137}
1138
1139impl GetSpanMut for ExportSpecifier<'_> {
1140 #[inline]
1141 fn span_mut(&mut self) -> &mut Span {
1142 &mut self.span
1143 }
1144}
1145
1146impl GetSpanMut for ExportDefaultDeclarationKind<'_> {
1147 fn span_mut(&mut self) -> &mut Span {
1148 match self {
1149 Self::FunctionDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1150 Self::ClassDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1151 Self::TSInterfaceDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1152 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
1153 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
1154 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
1155 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
1156 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
1157 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
1158 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
1159 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
1160 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
1161 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
1162 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
1163 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
1164 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
1165 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
1166 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
1167 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
1168 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
1169 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
1170 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
1171 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
1172 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
1173 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
1174 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
1175 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
1176 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
1177 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
1178 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
1179 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
1180 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
1181 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
1182 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
1183 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
1184 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
1185 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
1186 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
1187 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
1188 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
1189 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
1190 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
1191 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
1192 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
1193 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
1194 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
1195 }
1196 }
1197}
1198
1199impl GetSpanMut for ModuleExportName<'_> {
1200 fn span_mut(&mut self) -> &mut Span {
1201 match self {
1202 Self::IdentifierName(it) => GetSpanMut::span_mut(it),
1203 Self::IdentifierReference(it) => GetSpanMut::span_mut(it),
1204 Self::StringLiteral(it) => GetSpanMut::span_mut(it),
1205 }
1206 }
1207}
1208
1209impl GetSpanMut for V8IntrinsicExpression<'_> {
1210 #[inline]
1211 fn span_mut(&mut self) -> &mut Span {
1212 &mut self.span
1213 }
1214}
1215
1216impl GetSpanMut for BooleanLiteral {
1217 #[inline]
1218 fn span_mut(&mut self) -> &mut Span {
1219 &mut self.span
1220 }
1221}
1222
1223impl GetSpanMut for NullLiteral {
1224 #[inline]
1225 fn span_mut(&mut self) -> &mut Span {
1226 &mut self.span
1227 }
1228}
1229
1230impl GetSpanMut for NumericLiteral<'_> {
1231 #[inline]
1232 fn span_mut(&mut self) -> &mut Span {
1233 &mut self.span
1234 }
1235}
1236
1237impl GetSpanMut for StringLiteral<'_> {
1238 #[inline]
1239 fn span_mut(&mut self) -> &mut Span {
1240 &mut self.span
1241 }
1242}
1243
1244impl GetSpanMut for BigIntLiteral<'_> {
1245 #[inline]
1246 fn span_mut(&mut self) -> &mut Span {
1247 &mut self.span
1248 }
1249}
1250
1251impl GetSpanMut for RegExpLiteral<'_> {
1252 #[inline]
1253 fn span_mut(&mut self) -> &mut Span {
1254 &mut self.span
1255 }
1256}
1257
1258impl GetSpanMut for JSXElement<'_> {
1259 #[inline]
1260 fn span_mut(&mut self) -> &mut Span {
1261 &mut self.span
1262 }
1263}
1264
1265impl GetSpanMut for JSXOpeningElement<'_> {
1266 #[inline]
1267 fn span_mut(&mut self) -> &mut Span {
1268 &mut self.span
1269 }
1270}
1271
1272impl GetSpanMut for JSXClosingElement<'_> {
1273 #[inline]
1274 fn span_mut(&mut self) -> &mut Span {
1275 &mut self.span
1276 }
1277}
1278
1279impl GetSpanMut for JSXFragment<'_> {
1280 #[inline]
1281 fn span_mut(&mut self) -> &mut Span {
1282 &mut self.span
1283 }
1284}
1285
1286impl GetSpanMut for JSXOpeningFragment {
1287 #[inline]
1288 fn span_mut(&mut self) -> &mut Span {
1289 &mut self.span
1290 }
1291}
1292
1293impl GetSpanMut for JSXClosingFragment {
1294 #[inline]
1295 fn span_mut(&mut self) -> &mut Span {
1296 &mut self.span
1297 }
1298}
1299
1300impl GetSpanMut for JSXElementName<'_> {
1301 fn span_mut(&mut self) -> &mut Span {
1302 match self {
1303 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
1304 Self::IdentifierReference(it) => GetSpanMut::span_mut(&mut **it),
1305 Self::NamespacedName(it) => GetSpanMut::span_mut(&mut **it),
1306 Self::MemberExpression(it) => GetSpanMut::span_mut(&mut **it),
1307 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
1308 }
1309 }
1310}
1311
1312impl GetSpanMut for JSXNamespacedName<'_> {
1313 #[inline]
1314 fn span_mut(&mut self) -> &mut Span {
1315 &mut self.span
1316 }
1317}
1318
1319impl GetSpanMut for JSXMemberExpression<'_> {
1320 #[inline]
1321 fn span_mut(&mut self) -> &mut Span {
1322 &mut self.span
1323 }
1324}
1325
1326impl GetSpanMut for JSXMemberExpressionObject<'_> {
1327 fn span_mut(&mut self) -> &mut Span {
1328 match self {
1329 Self::IdentifierReference(it) => GetSpanMut::span_mut(&mut **it),
1330 Self::MemberExpression(it) => GetSpanMut::span_mut(&mut **it),
1331 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
1332 }
1333 }
1334}
1335
1336impl GetSpanMut for JSXExpressionContainer<'_> {
1337 #[inline]
1338 fn span_mut(&mut self) -> &mut Span {
1339 &mut self.span
1340 }
1341}
1342
1343impl GetSpanMut for JSXExpression<'_> {
1344 fn span_mut(&mut self) -> &mut Span {
1345 match self {
1346 Self::EmptyExpression(it) => GetSpanMut::span_mut(it),
1347 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
1348 Self::NullLiteral(it) => GetSpanMut::span_mut(&mut **it),
1349 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
1350 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
1351 Self::RegExpLiteral(it) => GetSpanMut::span_mut(&mut **it),
1352 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
1353 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
1354 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
1355 Self::MetaProperty(it) => GetSpanMut::span_mut(&mut **it),
1356 Self::Super(it) => GetSpanMut::span_mut(&mut **it),
1357 Self::ArrayExpression(it) => GetSpanMut::span_mut(&mut **it),
1358 Self::ArrowFunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
1359 Self::AssignmentExpression(it) => GetSpanMut::span_mut(&mut **it),
1360 Self::AwaitExpression(it) => GetSpanMut::span_mut(&mut **it),
1361 Self::BinaryExpression(it) => GetSpanMut::span_mut(&mut **it),
1362 Self::CallExpression(it) => GetSpanMut::span_mut(&mut **it),
1363 Self::ChainExpression(it) => GetSpanMut::span_mut(&mut **it),
1364 Self::ClassExpression(it) => GetSpanMut::span_mut(&mut **it),
1365 Self::ConditionalExpression(it) => GetSpanMut::span_mut(&mut **it),
1366 Self::FunctionExpression(it) => GetSpanMut::span_mut(&mut **it),
1367 Self::ImportExpression(it) => GetSpanMut::span_mut(&mut **it),
1368 Self::LogicalExpression(it) => GetSpanMut::span_mut(&mut **it),
1369 Self::NewExpression(it) => GetSpanMut::span_mut(&mut **it),
1370 Self::ObjectExpression(it) => GetSpanMut::span_mut(&mut **it),
1371 Self::ParenthesizedExpression(it) => GetSpanMut::span_mut(&mut **it),
1372 Self::SequenceExpression(it) => GetSpanMut::span_mut(&mut **it),
1373 Self::TaggedTemplateExpression(it) => GetSpanMut::span_mut(&mut **it),
1374 Self::ThisExpression(it) => GetSpanMut::span_mut(&mut **it),
1375 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
1376 Self::UpdateExpression(it) => GetSpanMut::span_mut(&mut **it),
1377 Self::YieldExpression(it) => GetSpanMut::span_mut(&mut **it),
1378 Self::PrivateInExpression(it) => GetSpanMut::span_mut(&mut **it),
1379 Self::JSXElement(it) => GetSpanMut::span_mut(&mut **it),
1380 Self::JSXFragment(it) => GetSpanMut::span_mut(&mut **it),
1381 Self::TSAsExpression(it) => GetSpanMut::span_mut(&mut **it),
1382 Self::TSSatisfiesExpression(it) => GetSpanMut::span_mut(&mut **it),
1383 Self::TSTypeAssertion(it) => GetSpanMut::span_mut(&mut **it),
1384 Self::TSNonNullExpression(it) => GetSpanMut::span_mut(&mut **it),
1385 Self::TSInstantiationExpression(it) => GetSpanMut::span_mut(&mut **it),
1386 Self::V8IntrinsicExpression(it) => GetSpanMut::span_mut(&mut **it),
1387 Self::ComputedMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
1388 Self::StaticMemberExpression(it) => GetSpanMut::span_mut(&mut **it),
1389 Self::PrivateFieldExpression(it) => GetSpanMut::span_mut(&mut **it),
1390 }
1391 }
1392}
1393
1394impl GetSpanMut for JSXEmptyExpression {
1395 #[inline]
1396 fn span_mut(&mut self) -> &mut Span {
1397 &mut self.span
1398 }
1399}
1400
1401impl GetSpanMut for JSXAttributeItem<'_> {
1402 fn span_mut(&mut self) -> &mut Span {
1403 match self {
1404 Self::Attribute(it) => GetSpanMut::span_mut(&mut **it),
1405 Self::SpreadAttribute(it) => GetSpanMut::span_mut(&mut **it),
1406 }
1407 }
1408}
1409
1410impl GetSpanMut for JSXAttribute<'_> {
1411 #[inline]
1412 fn span_mut(&mut self) -> &mut Span {
1413 &mut self.span
1414 }
1415}
1416
1417impl GetSpanMut for JSXSpreadAttribute<'_> {
1418 #[inline]
1419 fn span_mut(&mut self) -> &mut Span {
1420 &mut self.span
1421 }
1422}
1423
1424impl GetSpanMut for JSXAttributeName<'_> {
1425 fn span_mut(&mut self) -> &mut Span {
1426 match self {
1427 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
1428 Self::NamespacedName(it) => GetSpanMut::span_mut(&mut **it),
1429 }
1430 }
1431}
1432
1433impl GetSpanMut for JSXAttributeValue<'_> {
1434 fn span_mut(&mut self) -> &mut Span {
1435 match self {
1436 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
1437 Self::ExpressionContainer(it) => GetSpanMut::span_mut(&mut **it),
1438 Self::Element(it) => GetSpanMut::span_mut(&mut **it),
1439 Self::Fragment(it) => GetSpanMut::span_mut(&mut **it),
1440 }
1441 }
1442}
1443
1444impl GetSpanMut for JSXIdentifier<'_> {
1445 #[inline]
1446 fn span_mut(&mut self) -> &mut Span {
1447 &mut self.span
1448 }
1449}
1450
1451impl GetSpanMut for JSXChild<'_> {
1452 fn span_mut(&mut self) -> &mut Span {
1453 match self {
1454 Self::Text(it) => GetSpanMut::span_mut(&mut **it),
1455 Self::Element(it) => GetSpanMut::span_mut(&mut **it),
1456 Self::Fragment(it) => GetSpanMut::span_mut(&mut **it),
1457 Self::ExpressionContainer(it) => GetSpanMut::span_mut(&mut **it),
1458 Self::Spread(it) => GetSpanMut::span_mut(&mut **it),
1459 }
1460 }
1461}
1462
1463impl GetSpanMut for JSXSpreadChild<'_> {
1464 #[inline]
1465 fn span_mut(&mut self) -> &mut Span {
1466 &mut self.span
1467 }
1468}
1469
1470impl GetSpanMut for JSXText<'_> {
1471 #[inline]
1472 fn span_mut(&mut self) -> &mut Span {
1473 &mut self.span
1474 }
1475}
1476
1477impl GetSpanMut for TSThisParameter<'_> {
1478 #[inline]
1479 fn span_mut(&mut self) -> &mut Span {
1480 &mut self.span
1481 }
1482}
1483
1484impl GetSpanMut for TSEnumDeclaration<'_> {
1485 #[inline]
1486 fn span_mut(&mut self) -> &mut Span {
1487 &mut self.span
1488 }
1489}
1490
1491impl GetSpanMut for TSEnumBody<'_> {
1492 #[inline]
1493 fn span_mut(&mut self) -> &mut Span {
1494 &mut self.span
1495 }
1496}
1497
1498impl GetSpanMut for TSEnumMember<'_> {
1499 #[inline]
1500 fn span_mut(&mut self) -> &mut Span {
1501 &mut self.span
1502 }
1503}
1504
1505impl GetSpanMut for TSEnumMemberName<'_> {
1506 fn span_mut(&mut self) -> &mut Span {
1507 match self {
1508 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
1509 Self::String(it) => GetSpanMut::span_mut(&mut **it),
1510 Self::ComputedString(it) => GetSpanMut::span_mut(&mut **it),
1511 Self::ComputedTemplateString(it) => GetSpanMut::span_mut(&mut **it),
1512 }
1513 }
1514}
1515
1516impl GetSpanMut for TSTypeAnnotation<'_> {
1517 #[inline]
1518 fn span_mut(&mut self) -> &mut Span {
1519 &mut self.span
1520 }
1521}
1522
1523impl GetSpanMut for TSLiteralType<'_> {
1524 #[inline]
1525 fn span_mut(&mut self) -> &mut Span {
1526 &mut self.span
1527 }
1528}
1529
1530impl GetSpanMut for TSLiteral<'_> {
1531 fn span_mut(&mut self) -> &mut Span {
1532 match self {
1533 Self::BooleanLiteral(it) => GetSpanMut::span_mut(&mut **it),
1534 Self::NumericLiteral(it) => GetSpanMut::span_mut(&mut **it),
1535 Self::BigIntLiteral(it) => GetSpanMut::span_mut(&mut **it),
1536 Self::StringLiteral(it) => GetSpanMut::span_mut(&mut **it),
1537 Self::TemplateLiteral(it) => GetSpanMut::span_mut(&mut **it),
1538 Self::UnaryExpression(it) => GetSpanMut::span_mut(&mut **it),
1539 }
1540 }
1541}
1542
1543impl GetSpanMut for TSType<'_> {
1544 fn span_mut(&mut self) -> &mut Span {
1545 match self {
1546 Self::TSAnyKeyword(it) => GetSpanMut::span_mut(&mut **it),
1547 Self::TSBigIntKeyword(it) => GetSpanMut::span_mut(&mut **it),
1548 Self::TSBooleanKeyword(it) => GetSpanMut::span_mut(&mut **it),
1549 Self::TSIntrinsicKeyword(it) => GetSpanMut::span_mut(&mut **it),
1550 Self::TSNeverKeyword(it) => GetSpanMut::span_mut(&mut **it),
1551 Self::TSNullKeyword(it) => GetSpanMut::span_mut(&mut **it),
1552 Self::TSNumberKeyword(it) => GetSpanMut::span_mut(&mut **it),
1553 Self::TSObjectKeyword(it) => GetSpanMut::span_mut(&mut **it),
1554 Self::TSStringKeyword(it) => GetSpanMut::span_mut(&mut **it),
1555 Self::TSSymbolKeyword(it) => GetSpanMut::span_mut(&mut **it),
1556 Self::TSUndefinedKeyword(it) => GetSpanMut::span_mut(&mut **it),
1557 Self::TSUnknownKeyword(it) => GetSpanMut::span_mut(&mut **it),
1558 Self::TSVoidKeyword(it) => GetSpanMut::span_mut(&mut **it),
1559 Self::TSArrayType(it) => GetSpanMut::span_mut(&mut **it),
1560 Self::TSConditionalType(it) => GetSpanMut::span_mut(&mut **it),
1561 Self::TSConstructorType(it) => GetSpanMut::span_mut(&mut **it),
1562 Self::TSFunctionType(it) => GetSpanMut::span_mut(&mut **it),
1563 Self::TSImportType(it) => GetSpanMut::span_mut(&mut **it),
1564 Self::TSIndexedAccessType(it) => GetSpanMut::span_mut(&mut **it),
1565 Self::TSInferType(it) => GetSpanMut::span_mut(&mut **it),
1566 Self::TSIntersectionType(it) => GetSpanMut::span_mut(&mut **it),
1567 Self::TSLiteralType(it) => GetSpanMut::span_mut(&mut **it),
1568 Self::TSMappedType(it) => GetSpanMut::span_mut(&mut **it),
1569 Self::TSNamedTupleMember(it) => GetSpanMut::span_mut(&mut **it),
1570 Self::TSTemplateLiteralType(it) => GetSpanMut::span_mut(&mut **it),
1571 Self::TSThisType(it) => GetSpanMut::span_mut(&mut **it),
1572 Self::TSTupleType(it) => GetSpanMut::span_mut(&mut **it),
1573 Self::TSTypeLiteral(it) => GetSpanMut::span_mut(&mut **it),
1574 Self::TSTypeOperatorType(it) => GetSpanMut::span_mut(&mut **it),
1575 Self::TSTypePredicate(it) => GetSpanMut::span_mut(&mut **it),
1576 Self::TSTypeQuery(it) => GetSpanMut::span_mut(&mut **it),
1577 Self::TSTypeReference(it) => GetSpanMut::span_mut(&mut **it),
1578 Self::TSUnionType(it) => GetSpanMut::span_mut(&mut **it),
1579 Self::TSParenthesizedType(it) => GetSpanMut::span_mut(&mut **it),
1580 Self::JSDocNullableType(it) => GetSpanMut::span_mut(&mut **it),
1581 Self::JSDocNonNullableType(it) => GetSpanMut::span_mut(&mut **it),
1582 Self::JSDocUnknownType(it) => GetSpanMut::span_mut(&mut **it),
1583 }
1584 }
1585}
1586
1587impl GetSpanMut for TSConditionalType<'_> {
1588 #[inline]
1589 fn span_mut(&mut self) -> &mut Span {
1590 &mut self.span
1591 }
1592}
1593
1594impl GetSpanMut for TSUnionType<'_> {
1595 #[inline]
1596 fn span_mut(&mut self) -> &mut Span {
1597 &mut self.span
1598 }
1599}
1600
1601impl GetSpanMut for TSIntersectionType<'_> {
1602 #[inline]
1603 fn span_mut(&mut self) -> &mut Span {
1604 &mut self.span
1605 }
1606}
1607
1608impl GetSpanMut for TSParenthesizedType<'_> {
1609 #[inline]
1610 fn span_mut(&mut self) -> &mut Span {
1611 &mut self.span
1612 }
1613}
1614
1615impl GetSpanMut for TSTypeOperator<'_> {
1616 #[inline]
1617 fn span_mut(&mut self) -> &mut Span {
1618 &mut self.span
1619 }
1620}
1621
1622impl GetSpanMut for TSArrayType<'_> {
1623 #[inline]
1624 fn span_mut(&mut self) -> &mut Span {
1625 &mut self.span
1626 }
1627}
1628
1629impl GetSpanMut for TSIndexedAccessType<'_> {
1630 #[inline]
1631 fn span_mut(&mut self) -> &mut Span {
1632 &mut self.span
1633 }
1634}
1635
1636impl GetSpanMut for TSTupleType<'_> {
1637 #[inline]
1638 fn span_mut(&mut self) -> &mut Span {
1639 &mut self.span
1640 }
1641}
1642
1643impl GetSpanMut for TSNamedTupleMember<'_> {
1644 #[inline]
1645 fn span_mut(&mut self) -> &mut Span {
1646 &mut self.span
1647 }
1648}
1649
1650impl GetSpanMut for TSOptionalType<'_> {
1651 #[inline]
1652 fn span_mut(&mut self) -> &mut Span {
1653 &mut self.span
1654 }
1655}
1656
1657impl GetSpanMut for TSRestType<'_> {
1658 #[inline]
1659 fn span_mut(&mut self) -> &mut Span {
1660 &mut self.span
1661 }
1662}
1663
1664impl GetSpanMut for TSTupleElement<'_> {
1665 fn span_mut(&mut self) -> &mut Span {
1666 match self {
1667 Self::TSOptionalType(it) => GetSpanMut::span_mut(&mut **it),
1668 Self::TSRestType(it) => GetSpanMut::span_mut(&mut **it),
1669 Self::TSAnyKeyword(it) => GetSpanMut::span_mut(&mut **it),
1670 Self::TSBigIntKeyword(it) => GetSpanMut::span_mut(&mut **it),
1671 Self::TSBooleanKeyword(it) => GetSpanMut::span_mut(&mut **it),
1672 Self::TSIntrinsicKeyword(it) => GetSpanMut::span_mut(&mut **it),
1673 Self::TSNeverKeyword(it) => GetSpanMut::span_mut(&mut **it),
1674 Self::TSNullKeyword(it) => GetSpanMut::span_mut(&mut **it),
1675 Self::TSNumberKeyword(it) => GetSpanMut::span_mut(&mut **it),
1676 Self::TSObjectKeyword(it) => GetSpanMut::span_mut(&mut **it),
1677 Self::TSStringKeyword(it) => GetSpanMut::span_mut(&mut **it),
1678 Self::TSSymbolKeyword(it) => GetSpanMut::span_mut(&mut **it),
1679 Self::TSUndefinedKeyword(it) => GetSpanMut::span_mut(&mut **it),
1680 Self::TSUnknownKeyword(it) => GetSpanMut::span_mut(&mut **it),
1681 Self::TSVoidKeyword(it) => GetSpanMut::span_mut(&mut **it),
1682 Self::TSArrayType(it) => GetSpanMut::span_mut(&mut **it),
1683 Self::TSConditionalType(it) => GetSpanMut::span_mut(&mut **it),
1684 Self::TSConstructorType(it) => GetSpanMut::span_mut(&mut **it),
1685 Self::TSFunctionType(it) => GetSpanMut::span_mut(&mut **it),
1686 Self::TSImportType(it) => GetSpanMut::span_mut(&mut **it),
1687 Self::TSIndexedAccessType(it) => GetSpanMut::span_mut(&mut **it),
1688 Self::TSInferType(it) => GetSpanMut::span_mut(&mut **it),
1689 Self::TSIntersectionType(it) => GetSpanMut::span_mut(&mut **it),
1690 Self::TSLiteralType(it) => GetSpanMut::span_mut(&mut **it),
1691 Self::TSMappedType(it) => GetSpanMut::span_mut(&mut **it),
1692 Self::TSNamedTupleMember(it) => GetSpanMut::span_mut(&mut **it),
1693 Self::TSTemplateLiteralType(it) => GetSpanMut::span_mut(&mut **it),
1694 Self::TSThisType(it) => GetSpanMut::span_mut(&mut **it),
1695 Self::TSTupleType(it) => GetSpanMut::span_mut(&mut **it),
1696 Self::TSTypeLiteral(it) => GetSpanMut::span_mut(&mut **it),
1697 Self::TSTypeOperatorType(it) => GetSpanMut::span_mut(&mut **it),
1698 Self::TSTypePredicate(it) => GetSpanMut::span_mut(&mut **it),
1699 Self::TSTypeQuery(it) => GetSpanMut::span_mut(&mut **it),
1700 Self::TSTypeReference(it) => GetSpanMut::span_mut(&mut **it),
1701 Self::TSUnionType(it) => GetSpanMut::span_mut(&mut **it),
1702 Self::TSParenthesizedType(it) => GetSpanMut::span_mut(&mut **it),
1703 Self::JSDocNullableType(it) => GetSpanMut::span_mut(&mut **it),
1704 Self::JSDocNonNullableType(it) => GetSpanMut::span_mut(&mut **it),
1705 Self::JSDocUnknownType(it) => GetSpanMut::span_mut(&mut **it),
1706 }
1707 }
1708}
1709
1710impl GetSpanMut for TSAnyKeyword {
1711 #[inline]
1712 fn span_mut(&mut self) -> &mut Span {
1713 &mut self.span
1714 }
1715}
1716
1717impl GetSpanMut for TSStringKeyword {
1718 #[inline]
1719 fn span_mut(&mut self) -> &mut Span {
1720 &mut self.span
1721 }
1722}
1723
1724impl GetSpanMut for TSBooleanKeyword {
1725 #[inline]
1726 fn span_mut(&mut self) -> &mut Span {
1727 &mut self.span
1728 }
1729}
1730
1731impl GetSpanMut for TSNumberKeyword {
1732 #[inline]
1733 fn span_mut(&mut self) -> &mut Span {
1734 &mut self.span
1735 }
1736}
1737
1738impl GetSpanMut for TSNeverKeyword {
1739 #[inline]
1740 fn span_mut(&mut self) -> &mut Span {
1741 &mut self.span
1742 }
1743}
1744
1745impl GetSpanMut for TSIntrinsicKeyword {
1746 #[inline]
1747 fn span_mut(&mut self) -> &mut Span {
1748 &mut self.span
1749 }
1750}
1751
1752impl GetSpanMut for TSUnknownKeyword {
1753 #[inline]
1754 fn span_mut(&mut self) -> &mut Span {
1755 &mut self.span
1756 }
1757}
1758
1759impl GetSpanMut for TSNullKeyword {
1760 #[inline]
1761 fn span_mut(&mut self) -> &mut Span {
1762 &mut self.span
1763 }
1764}
1765
1766impl GetSpanMut for TSUndefinedKeyword {
1767 #[inline]
1768 fn span_mut(&mut self) -> &mut Span {
1769 &mut self.span
1770 }
1771}
1772
1773impl GetSpanMut for TSVoidKeyword {
1774 #[inline]
1775 fn span_mut(&mut self) -> &mut Span {
1776 &mut self.span
1777 }
1778}
1779
1780impl GetSpanMut for TSSymbolKeyword {
1781 #[inline]
1782 fn span_mut(&mut self) -> &mut Span {
1783 &mut self.span
1784 }
1785}
1786
1787impl GetSpanMut for TSThisType {
1788 #[inline]
1789 fn span_mut(&mut self) -> &mut Span {
1790 &mut self.span
1791 }
1792}
1793
1794impl GetSpanMut for TSObjectKeyword {
1795 #[inline]
1796 fn span_mut(&mut self) -> &mut Span {
1797 &mut self.span
1798 }
1799}
1800
1801impl GetSpanMut for TSBigIntKeyword {
1802 #[inline]
1803 fn span_mut(&mut self) -> &mut Span {
1804 &mut self.span
1805 }
1806}
1807
1808impl GetSpanMut for TSTypeReference<'_> {
1809 #[inline]
1810 fn span_mut(&mut self) -> &mut Span {
1811 &mut self.span
1812 }
1813}
1814
1815impl GetSpanMut for TSTypeName<'_> {
1816 fn span_mut(&mut self) -> &mut Span {
1817 match self {
1818 Self::IdentifierReference(it) => GetSpanMut::span_mut(&mut **it),
1819 Self::QualifiedName(it) => GetSpanMut::span_mut(&mut **it),
1820 }
1821 }
1822}
1823
1824impl GetSpanMut for TSQualifiedName<'_> {
1825 #[inline]
1826 fn span_mut(&mut self) -> &mut Span {
1827 &mut self.span
1828 }
1829}
1830
1831impl GetSpanMut for TSTypeParameterInstantiation<'_> {
1832 #[inline]
1833 fn span_mut(&mut self) -> &mut Span {
1834 &mut self.span
1835 }
1836}
1837
1838impl GetSpanMut for TSTypeParameter<'_> {
1839 #[inline]
1840 fn span_mut(&mut self) -> &mut Span {
1841 &mut self.span
1842 }
1843}
1844
1845impl GetSpanMut for TSTypeParameterDeclaration<'_> {
1846 #[inline]
1847 fn span_mut(&mut self) -> &mut Span {
1848 &mut self.span
1849 }
1850}
1851
1852impl GetSpanMut for TSTypeAliasDeclaration<'_> {
1853 #[inline]
1854 fn span_mut(&mut self) -> &mut Span {
1855 &mut self.span
1856 }
1857}
1858
1859impl GetSpanMut for TSClassImplements<'_> {
1860 #[inline]
1861 fn span_mut(&mut self) -> &mut Span {
1862 &mut self.span
1863 }
1864}
1865
1866impl GetSpanMut for TSInterfaceDeclaration<'_> {
1867 #[inline]
1868 fn span_mut(&mut self) -> &mut Span {
1869 &mut self.span
1870 }
1871}
1872
1873impl GetSpanMut for TSInterfaceBody<'_> {
1874 #[inline]
1875 fn span_mut(&mut self) -> &mut Span {
1876 &mut self.span
1877 }
1878}
1879
1880impl GetSpanMut for TSPropertySignature<'_> {
1881 #[inline]
1882 fn span_mut(&mut self) -> &mut Span {
1883 &mut self.span
1884 }
1885}
1886
1887impl GetSpanMut for TSSignature<'_> {
1888 fn span_mut(&mut self) -> &mut Span {
1889 match self {
1890 Self::TSIndexSignature(it) => GetSpanMut::span_mut(&mut **it),
1891 Self::TSPropertySignature(it) => GetSpanMut::span_mut(&mut **it),
1892 Self::TSCallSignatureDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1893 Self::TSConstructSignatureDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1894 Self::TSMethodSignature(it) => GetSpanMut::span_mut(&mut **it),
1895 }
1896 }
1897}
1898
1899impl GetSpanMut for TSIndexSignature<'_> {
1900 #[inline]
1901 fn span_mut(&mut self) -> &mut Span {
1902 &mut self.span
1903 }
1904}
1905
1906impl GetSpanMut for TSCallSignatureDeclaration<'_> {
1907 #[inline]
1908 fn span_mut(&mut self) -> &mut Span {
1909 &mut self.span
1910 }
1911}
1912
1913impl GetSpanMut for TSMethodSignature<'_> {
1914 #[inline]
1915 fn span_mut(&mut self) -> &mut Span {
1916 &mut self.span
1917 }
1918}
1919
1920impl GetSpanMut for TSConstructSignatureDeclaration<'_> {
1921 #[inline]
1922 fn span_mut(&mut self) -> &mut Span {
1923 &mut self.span
1924 }
1925}
1926
1927impl GetSpanMut for TSIndexSignatureName<'_> {
1928 #[inline]
1929 fn span_mut(&mut self) -> &mut Span {
1930 &mut self.span
1931 }
1932}
1933
1934impl GetSpanMut for TSInterfaceHeritage<'_> {
1935 #[inline]
1936 fn span_mut(&mut self) -> &mut Span {
1937 &mut self.span
1938 }
1939}
1940
1941impl GetSpanMut for TSTypePredicate<'_> {
1942 #[inline]
1943 fn span_mut(&mut self) -> &mut Span {
1944 &mut self.span
1945 }
1946}
1947
1948impl GetSpanMut for TSTypePredicateName<'_> {
1949 fn span_mut(&mut self) -> &mut Span {
1950 match self {
1951 Self::Identifier(it) => GetSpanMut::span_mut(&mut **it),
1952 Self::This(it) => GetSpanMut::span_mut(it),
1953 }
1954 }
1955}
1956
1957impl GetSpanMut for TSModuleDeclaration<'_> {
1958 #[inline]
1959 fn span_mut(&mut self) -> &mut Span {
1960 &mut self.span
1961 }
1962}
1963
1964impl GetSpanMut for TSModuleDeclarationName<'_> {
1965 fn span_mut(&mut self) -> &mut Span {
1966 match self {
1967 Self::Identifier(it) => GetSpanMut::span_mut(it),
1968 Self::StringLiteral(it) => GetSpanMut::span_mut(it),
1969 }
1970 }
1971}
1972
1973impl GetSpanMut for TSModuleDeclarationBody<'_> {
1974 fn span_mut(&mut self) -> &mut Span {
1975 match self {
1976 Self::TSModuleDeclaration(it) => GetSpanMut::span_mut(&mut **it),
1977 Self::TSModuleBlock(it) => GetSpanMut::span_mut(&mut **it),
1978 }
1979 }
1980}
1981
1982impl GetSpanMut for TSModuleBlock<'_> {
1983 #[inline]
1984 fn span_mut(&mut self) -> &mut Span {
1985 &mut self.span
1986 }
1987}
1988
1989impl GetSpanMut for TSTypeLiteral<'_> {
1990 #[inline]
1991 fn span_mut(&mut self) -> &mut Span {
1992 &mut self.span
1993 }
1994}
1995
1996impl GetSpanMut for TSInferType<'_> {
1997 #[inline]
1998 fn span_mut(&mut self) -> &mut Span {
1999 &mut self.span
2000 }
2001}
2002
2003impl GetSpanMut for TSTypeQuery<'_> {
2004 #[inline]
2005 fn span_mut(&mut self) -> &mut Span {
2006 &mut self.span
2007 }
2008}
2009
2010impl GetSpanMut for TSTypeQueryExprName<'_> {
2011 fn span_mut(&mut self) -> &mut Span {
2012 match self {
2013 Self::TSImportType(it) => GetSpanMut::span_mut(&mut **it),
2014 Self::IdentifierReference(it) => GetSpanMut::span_mut(&mut **it),
2015 Self::QualifiedName(it) => GetSpanMut::span_mut(&mut **it),
2016 }
2017 }
2018}
2019
2020impl GetSpanMut for TSImportType<'_> {
2021 #[inline]
2022 fn span_mut(&mut self) -> &mut Span {
2023 &mut self.span
2024 }
2025}
2026
2027impl GetSpanMut for TSFunctionType<'_> {
2028 #[inline]
2029 fn span_mut(&mut self) -> &mut Span {
2030 &mut self.span
2031 }
2032}
2033
2034impl GetSpanMut for TSConstructorType<'_> {
2035 #[inline]
2036 fn span_mut(&mut self) -> &mut Span {
2037 &mut self.span
2038 }
2039}
2040
2041impl GetSpanMut for TSMappedType<'_> {
2042 #[inline]
2043 fn span_mut(&mut self) -> &mut Span {
2044 &mut self.span
2045 }
2046}
2047
2048impl GetSpanMut for TSTemplateLiteralType<'_> {
2049 #[inline]
2050 fn span_mut(&mut self) -> &mut Span {
2051 &mut self.span
2052 }
2053}
2054
2055impl GetSpanMut for TSAsExpression<'_> {
2056 #[inline]
2057 fn span_mut(&mut self) -> &mut Span {
2058 &mut self.span
2059 }
2060}
2061
2062impl GetSpanMut for TSSatisfiesExpression<'_> {
2063 #[inline]
2064 fn span_mut(&mut self) -> &mut Span {
2065 &mut self.span
2066 }
2067}
2068
2069impl GetSpanMut for TSTypeAssertion<'_> {
2070 #[inline]
2071 fn span_mut(&mut self) -> &mut Span {
2072 &mut self.span
2073 }
2074}
2075
2076impl GetSpanMut for TSImportEqualsDeclaration<'_> {
2077 #[inline]
2078 fn span_mut(&mut self) -> &mut Span {
2079 &mut self.span
2080 }
2081}
2082
2083impl GetSpanMut for TSModuleReference<'_> {
2084 fn span_mut(&mut self) -> &mut Span {
2085 match self {
2086 Self::ExternalModuleReference(it) => GetSpanMut::span_mut(&mut **it),
2087 Self::IdentifierReference(it) => GetSpanMut::span_mut(&mut **it),
2088 Self::QualifiedName(it) => GetSpanMut::span_mut(&mut **it),
2089 }
2090 }
2091}
2092
2093impl GetSpanMut for TSExternalModuleReference<'_> {
2094 #[inline]
2095 fn span_mut(&mut self) -> &mut Span {
2096 &mut self.span
2097 }
2098}
2099
2100impl GetSpanMut for TSNonNullExpression<'_> {
2101 #[inline]
2102 fn span_mut(&mut self) -> &mut Span {
2103 &mut self.span
2104 }
2105}
2106
2107impl GetSpanMut for Decorator<'_> {
2108 #[inline]
2109 fn span_mut(&mut self) -> &mut Span {
2110 &mut self.span
2111 }
2112}
2113
2114impl GetSpanMut for TSExportAssignment<'_> {
2115 #[inline]
2116 fn span_mut(&mut self) -> &mut Span {
2117 &mut self.span
2118 }
2119}
2120
2121impl GetSpanMut for TSNamespaceExportDeclaration<'_> {
2122 #[inline]
2123 fn span_mut(&mut self) -> &mut Span {
2124 &mut self.span
2125 }
2126}
2127
2128impl GetSpanMut for TSInstantiationExpression<'_> {
2129 #[inline]
2130 fn span_mut(&mut self) -> &mut Span {
2131 &mut self.span
2132 }
2133}
2134
2135impl GetSpanMut for JSDocNullableType<'_> {
2136 #[inline]
2137 fn span_mut(&mut self) -> &mut Span {
2138 &mut self.span
2139 }
2140}
2141
2142impl GetSpanMut for JSDocNonNullableType<'_> {
2143 #[inline]
2144 fn span_mut(&mut self) -> &mut Span {
2145 &mut self.span
2146 }
2147}
2148
2149impl GetSpanMut for JSDocUnknownType {
2150 #[inline]
2151 fn span_mut(&mut self) -> &mut Span {
2152 &mut self.span
2153 }
2154}