@@ -268,7 +268,6 @@ macro_rules! make_ast_visitor {
268
268
type Result : VisitorResult = ( ) ;
269
269
270
270
make_visit!{ AssocItem , ctxt: AssocCtxt ; visit_assoc_item, walk_assoc_item}
271
- make_visit!{ FieldDef ; visit_field_def, walk_field_def}
272
271
make_visit!{ ForeignItem ; visit_foreign_item, walk_item}
273
272
make_visit!{ GenericParam ; visit_generic_param, walk_generic_param}
274
273
make_visit!{ Item ; visit_item, walk_item}
@@ -308,6 +307,7 @@ macro_rules! make_ast_visitor {
308
307
make_visit!{ Crate ; visit_crate, walk_crate}
309
308
make_visit!{ EnumDef ; visit_enum_def, walk_enum_def}
310
309
make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
310
+ make_visit!{ FieldDef ; visit_field_def, walk_field_def}
311
311
make_visit!{ FnDecl ; visit_fn_decl, walk_fn_decl}
312
312
make_visit!{ FnRetTy ; visit_fn_ret_ty, walk_fn_ret_ty}
313
313
make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
@@ -435,6 +435,20 @@ macro_rules! make_ast_visitor {
435
435
return_result!( V )
436
436
}
437
437
438
+ pub fn walk_field_def<$( $lt, ) ? V : $trait$( <$lt>) ?>(
439
+ visitor: & mut V ,
440
+ fd: ref_t!( FieldDef )
441
+ ) -> result!( V ) {
442
+ let FieldDef { span, ident, vis, id, ty, attrs, is_placeholder: _ } = fd;
443
+ try_v!( visit_id!( visitor, id) ) ;
444
+ visit_list!( visitor, visit_attribute, attrs) ;
445
+ try_v!( visitor. visit_vis( vis) ) ;
446
+ visit_o!( ident, |ident| visitor. visit_ident( ident) ) ;
447
+ try_v!( visitor. visit_ty( ty) ) ;
448
+ try_v!( visit_span!( visitor, span) ) ;
449
+ return_result!( V )
450
+ }
451
+
438
452
pub fn walk_fn_decl<$( $lt, ) ? V : $trait$( <$lt>) ?>(
439
453
vis: & mut V ,
440
454
decl: ref_t!( FnDecl )
@@ -1292,15 +1306,6 @@ pub mod visit {
1292
1306
V :: Result :: output ( )
1293
1307
}
1294
1308
1295
- pub fn walk_field_def < ' a , V : Visitor < ' a > > ( visitor : & mut V , field : & ' a FieldDef ) -> V :: Result {
1296
- let FieldDef { attrs, id : _, span : _, vis, ident, ty, is_placeholder : _ } = field;
1297
- walk_list ! ( visitor, visit_attribute, attrs) ;
1298
- try_visit ! ( visitor. visit_vis( vis) ) ;
1299
- visit_opt ! ( visitor, visit_ident, ident) ;
1300
- try_visit ! ( visitor. visit_ty( ty) ) ;
1301
- V :: Result :: output ( )
1302
- }
1303
-
1304
1309
pub fn walk_block < ' a , V : Visitor < ' a > > ( visitor : & mut V , block : & ' a Block ) -> V :: Result {
1305
1310
let Block { stmts, id : _, rules : _, span : _, tokens : _, could_be_bare_literal : _ } = block;
1306
1311
walk_list ! ( visitor, visit_stmt, stmts) ;
@@ -2177,13 +2182,7 @@ pub mod mut_visit {
2177
2182
visitor : & mut T ,
2178
2183
mut fd : FieldDef ,
2179
2184
) -> SmallVec < [ FieldDef ; 1 ] > {
2180
- let FieldDef { span, ident, vis, id, ty, attrs, is_placeholder : _ } = & mut fd;
2181
- visitor. visit_id ( id) ;
2182
- visit_attrs ( visitor, attrs) ;
2183
- visitor. visit_vis ( vis) ;
2184
- visit_opt ( ident, |ident| visitor. visit_ident ( ident) ) ;
2185
- visitor. visit_ty ( ty) ;
2186
- visitor. visit_span ( span) ;
2185
+ visitor. visit_field_def ( & mut fd) ;
2187
2186
smallvec ! [ fd]
2188
2187
}
2189
2188
0 commit comments