@@ -270,7 +270,6 @@ macro_rules! make_ast_visitor {
270
270
271
271
make_visit!{ Arm ; visit_arm, walk_arm}
272
272
make_visit!{ AssocItem , ctxt: AssocCtxt ; visit_assoc_item, walk_assoc_item}
273
- make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
274
273
make_visit!{ FieldDef ; visit_field_def, walk_field_def}
275
274
make_visit!{ ForeignItem ; visit_foreign_item, walk_item}
276
275
make_visit!{ GenericParam ; visit_generic_param, walk_generic_param}
@@ -313,6 +312,7 @@ macro_rules! make_ast_visitor {
313
312
make_visit!{ ClosureBinder ; visit_closure_binder, walk_closure_binder}
314
313
make_visit!{ Crate ; visit_crate, walk_crate}
315
314
make_visit!{ EnumDef ; visit_enum_def, walk_enum_def}
315
+ make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
316
316
make_visit!{ FnDecl ; visit_fn_decl, walk_fn_decl}
317
317
make_visit!{ FnRetTy ; visit_fn_ret_ty, walk_fn_ret_ty}
318
318
make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
@@ -407,6 +407,19 @@ macro_rules! make_ast_visitor {
407
407
return_result!( V )
408
408
}
409
409
410
+ pub fn walk_expr_field<$( $lt, ) ? V : $trait$( <$lt>) ?>(
411
+ vis: & mut V ,
412
+ f: ref_t!( ExprField )
413
+ ) -> result!( V ) {
414
+ let ExprField { ident, expr, span, is_shorthand: _, attrs, id, is_placeholder: _ } = f;
415
+ try_v!( visit_id!( vis, id) ) ;
416
+ visit_list!( vis, visit_attribute, attrs) ;
417
+ try_v!( vis. visit_ident( ident) ) ;
418
+ try_v!( vis. visit_expr( expr) ) ;
419
+ try_v!( visit_span!( vis, span) ) ;
420
+ return_result!( V )
421
+ }
422
+
410
423
pub fn walk_fn_decl<$( $lt, ) ? V : $trait$( <$lt>) ?>(
411
424
vis: & mut V ,
412
425
decl: ref_t!( FnDecl )
@@ -908,15 +921,6 @@ pub mod visit {
908
921
V :: Result :: output ( )
909
922
}
910
923
911
- pub fn walk_expr_field < ' a , V : Visitor < ' a > > ( visitor : & mut V , f : & ' a ExprField ) -> V :: Result {
912
- let ExprField { attrs, id : _, span : _, ident, expr, is_shorthand : _, is_placeholder : _ } =
913
- f;
914
- walk_list ! ( visitor, visit_attribute, attrs) ;
915
- try_visit ! ( visitor. visit_ident( ident) ) ;
916
- try_visit ! ( visitor. visit_expr( expr) ) ;
917
- V :: Result :: output ( )
918
- }
919
-
920
924
pub fn walk_ty < ' a , V : Visitor < ' a > > ( visitor : & mut V , typ : & ' a Ty ) -> V :: Result {
921
925
let Ty { id, kind, span : _, tokens : _ } = typ;
922
926
match kind {
@@ -2204,12 +2208,7 @@ pub mod mut_visit {
2204
2208
vis : & mut T ,
2205
2209
mut f : ExprField ,
2206
2210
) -> SmallVec < [ ExprField ; 1 ] > {
2207
- let ExprField { ident, expr, span, is_shorthand : _, attrs, id, is_placeholder : _ } = & mut f;
2208
- vis. visit_id ( id) ;
2209
- visit_attrs ( vis, attrs) ;
2210
- vis. visit_ident ( ident) ;
2211
- vis. visit_expr ( expr) ;
2212
- vis. visit_span ( span) ;
2211
+ vis. visit_expr_field ( & mut f) ;
2213
2212
smallvec ! [ f]
2214
2213
}
2215
2214
0 commit comments