Skip to content

Commit 87a7711

Browse files
committed
refactor(ast): shorten generated code for VisitMut (#8795)
`for x in vec.iter_mut()` is unnecessarily long - `for x in vec` works just as well.
1 parent 70ad879 commit 87a7711

File tree

2 files changed

+29
-30
lines changed

2 files changed

+29
-30
lines changed

crates/oxc_ast/src/generated/visit_mut.rs

+28-28
Original file line numberDiff line numberDiff line change
@@ -1371,7 +1371,7 @@ pub mod walk_mut {
13711371

13721372
#[inline]
13731373
pub fn walk_directives<'a, V: VisitMut<'a>>(visitor: &mut V, it: &mut Vec<'a, Directive<'a>>) {
1374-
for el in it.iter_mut() {
1374+
for el in it {
13751375
visitor.visit_directive(el);
13761376
}
13771377
}
@@ -1395,7 +1395,7 @@ pub mod walk_mut {
13951395

13961396
#[inline]
13971397
pub fn walk_statements<'a, V: VisitMut<'a>>(visitor: &mut V, it: &mut Vec<'a, Statement<'a>>) {
1398-
for el in it.iter_mut() {
1398+
for el in it {
13991399
visitor.visit_statement(el);
14001400
}
14011401
}
@@ -1610,7 +1610,7 @@ pub mod walk_mut {
16101610
visitor: &mut V,
16111611
it: &mut Vec<'a, TemplateElement<'a>>,
16121612
) {
1613-
for el in it.iter_mut() {
1613+
for el in it {
16141614
visitor.visit_template_element(el);
16151615
}
16161616
}
@@ -1629,7 +1629,7 @@ pub mod walk_mut {
16291629
visitor: &mut V,
16301630
it: &mut Vec<'a, Expression<'a>>,
16311631
) {
1632-
for el in it.iter_mut() {
1632+
for el in it {
16331633
visitor.visit_expression(el);
16341634
}
16351635
}
@@ -1691,7 +1691,7 @@ pub mod walk_mut {
16911691
visitor: &mut V,
16921692
it: &mut Vec<'a, ArrayExpressionElement<'a>>,
16931693
) {
1694-
for el in it.iter_mut() {
1694+
for el in it {
16951695
visitor.visit_array_expression_element(el);
16961696
}
16971697
}
@@ -1777,7 +1777,7 @@ pub mod walk_mut {
17771777
visitor: &mut V,
17781778
it: &mut Vec<'a, TSTypeParameter<'a>>,
17791779
) {
1780-
for el in it.iter_mut() {
1780+
for el in it {
17811781
visitor.visit_ts_type_parameter(el);
17821782
}
17831783
}
@@ -2028,7 +2028,7 @@ pub mod walk_mut {
20282028
visitor: &mut V,
20292029
it: &mut Vec<'a, FormalParameter<'a>>,
20302030
) {
2031-
for el in it.iter_mut() {
2031+
for el in it {
20322032
visitor.visit_formal_parameter(el);
20332033
}
20342034
}
@@ -2048,7 +2048,7 @@ pub mod walk_mut {
20482048

20492049
#[inline]
20502050
pub fn walk_decorators<'a, V: VisitMut<'a>>(visitor: &mut V, it: &mut Vec<'a, Decorator<'a>>) {
2051-
for el in it.iter_mut() {
2051+
for el in it {
20522052
visitor.visit_decorator(el);
20532053
}
20542054
}
@@ -2101,7 +2101,7 @@ pub mod walk_mut {
21012101
visitor: &mut V,
21022102
it: &mut Vec<'a, BindingProperty<'a>>,
21032103
) {
2104-
for el in it.iter_mut() {
2104+
for el in it {
21052105
visitor.visit_binding_property(el);
21062106
}
21072107
}
@@ -2281,7 +2281,7 @@ pub mod walk_mut {
22812281
visitor: &mut V,
22822282
it: &mut Vec<'a, TSImportAttribute<'a>>,
22832283
) {
2284-
for el in it.iter_mut() {
2284+
for el in it {
22852285
visitor.visit_ts_import_attribute(el);
22862286
}
22872287
}
@@ -2322,7 +2322,7 @@ pub mod walk_mut {
23222322

23232323
#[inline]
23242324
pub fn walk_ts_types<'a, V: VisitMut<'a>>(visitor: &mut V, it: &mut Vec<'a, TSType<'a>>) {
2325-
for el in it.iter_mut() {
2325+
for el in it {
23262326
visitor.visit_ts_type(el);
23272327
}
23282328
}
@@ -2487,7 +2487,7 @@ pub mod walk_mut {
24872487
visitor: &mut V,
24882488
it: &mut Vec<'a, TSTupleElement<'a>>,
24892489
) {
2490-
for el in it.iter_mut() {
2490+
for el in it {
24912491
visitor.visit_ts_tuple_element(el);
24922492
}
24932493
}
@@ -2506,7 +2506,7 @@ pub mod walk_mut {
25062506
visitor: &mut V,
25072507
it: &mut Vec<'a, TSSignature<'a>>,
25082508
) {
2509-
for el in it.iter_mut() {
2509+
for el in it {
25102510
visitor.visit_ts_signature(el);
25112511
}
25122512
}
@@ -2542,7 +2542,7 @@ pub mod walk_mut {
25422542
visitor: &mut V,
25432543
it: &mut Vec<'a, TSIndexSignatureName<'a>>,
25442544
) {
2545-
for el in it.iter_mut() {
2545+
for el in it {
25462546
visitor.visit_ts_index_signature_name(el);
25472547
}
25482548
}
@@ -3041,7 +3041,7 @@ pub mod walk_mut {
30413041
visitor: &mut V,
30423042
it: &mut Vec<'a, AssignmentTargetProperty<'a>>,
30433043
) {
3044-
for el in it.iter_mut() {
3044+
for el in it {
30453045
visitor.visit_assignment_target_property(el);
30463046
}
30473047
}
@@ -3125,7 +3125,7 @@ pub mod walk_mut {
31253125

31263126
#[inline]
31273127
pub fn walk_arguments<'a, V: VisitMut<'a>>(visitor: &mut V, it: &mut Vec<'a, Argument<'a>>) {
3128-
for el in it.iter_mut() {
3128+
for el in it {
31293129
visitor.visit_argument(el);
31303130
}
31313131
}
@@ -3195,7 +3195,7 @@ pub mod walk_mut {
31953195
visitor: &mut V,
31963196
it: &mut Vec<'a, TSClassImplements<'a>>,
31973197
) {
3198-
for el in it.iter_mut() {
3198+
for el in it {
31993199
visitor.visit_ts_class_implements(el);
32003200
}
32013201
}
@@ -3229,7 +3229,7 @@ pub mod walk_mut {
32293229
visitor: &mut V,
32303230
it: &mut Vec<'a, ClassElement<'a>>,
32313231
) {
3232-
for el in it.iter_mut() {
3232+
for el in it {
32333233
visitor.visit_class_element(el);
32343234
}
32353235
}
@@ -3425,7 +3425,7 @@ pub mod walk_mut {
34253425
visitor: &mut V,
34263426
it: &mut Vec<'a, ObjectPropertyKind<'a>>,
34273427
) {
3428-
for el in it.iter_mut() {
3428+
for el in it {
34293429
visitor.visit_object_property_kind(el);
34303430
}
34313431
}
@@ -3642,7 +3642,7 @@ pub mod walk_mut {
36423642
visitor: &mut V,
36433643
it: &mut Vec<'a, JSXAttributeItem<'a>>,
36443644
) {
3645-
for el in it.iter_mut() {
3645+
for el in it {
36463646
visitor.visit_jsx_attribute_item(el);
36473647
}
36483648
}
@@ -3737,7 +3737,7 @@ pub mod walk_mut {
37373737

37383738
#[inline]
37393739
pub fn walk_jsx_children<'a, V: VisitMut<'a>>(visitor: &mut V, it: &mut Vec<'a, JSXChild<'a>>) {
3740-
for el in it.iter_mut() {
3740+
for el in it {
37413741
visitor.visit_jsx_child(el);
37423742
}
37433743
}
@@ -3861,7 +3861,7 @@ pub mod walk_mut {
38613861
visitor: &mut V,
38623862
it: &mut Vec<'a, VariableDeclarator<'a>>,
38633863
) {
3864-
for el in it.iter_mut() {
3864+
for el in it {
38653865
visitor.visit_variable_declarator(el);
38663866
}
38673867
}
@@ -3991,7 +3991,7 @@ pub mod walk_mut {
39913991
visitor: &mut V,
39923992
it: &mut Vec<'a, SwitchCase<'a>>,
39933993
) {
3994-
for el in it.iter_mut() {
3994+
for el in it {
39953995
visitor.visit_switch_case(el);
39963996
}
39973997
}
@@ -4137,7 +4137,7 @@ pub mod walk_mut {
41374137
visitor: &mut V,
41384138
it: &mut Vec<'a, TSInterfaceHeritage<'a>>,
41394139
) {
4140-
for el in it.iter_mut() {
4140+
for el in it {
41414141
visitor.visit_ts_interface_heritage(el);
41424142
}
41434143
}
@@ -4187,7 +4187,7 @@ pub mod walk_mut {
41874187
visitor: &mut V,
41884188
it: &mut Vec<'a, TSEnumMember<'a>>,
41894189
) {
4190-
for el in it.iter_mut() {
4190+
for el in it {
41914191
visitor.visit_ts_enum_member(el);
41924192
}
41934193
}
@@ -4364,7 +4364,7 @@ pub mod walk_mut {
43644364
visitor: &mut V,
43654365
it: &mut Vec<'a, ImportDeclarationSpecifier<'a>>,
43664366
) {
4367-
for el in it.iter_mut() {
4367+
for el in it {
43684368
visitor.visit_import_declaration_specifier(el);
43694369
}
43704370
}
@@ -4447,7 +4447,7 @@ pub mod walk_mut {
44474447
visitor: &mut V,
44484448
it: &mut Vec<'a, ImportAttribute<'a>>,
44494449
) {
4450-
for el in it.iter_mut() {
4450+
for el in it {
44514451
visitor.visit_import_attribute(el);
44524452
}
44534453
}
@@ -4551,7 +4551,7 @@ pub mod walk_mut {
45514551
visitor: &mut V,
45524552
it: &mut Vec<'a, ExportSpecifier<'a>>,
45534553
) {
4554-
for el in it.iter_mut() {
4554+
for el in it {
45554555
visitor.visit_export_specifier(el);
45564556
}
45574557
}

tasks/ast_tools/src/generators/visit.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -248,10 +248,9 @@ impl<'a> VisitBuilder<'a> {
248248

249249
let (walk_body, may_inline) = if collection {
250250
let singular_visit = self.get_visitor(def, false);
251-
let iter = if self.is_mut { quote!(it.iter_mut()) } else { quote!(it) };
252251
(
253252
quote! {
254-
for el in #iter {
253+
for el in it {
255254
visitor.#singular_visit(el);
256255
}
257256
},

0 commit comments

Comments
 (0)