@@ -274,7 +274,6 @@ macro_rules! make_ast_visitor {
274
274
type Result : VisitorResult = ( ) ;
275
275
276
276
make_visit!{ AssocItem , ctxt: AssocCtxt ; visit_assoc_item, walk_assoc_item}
277
- make_visit!{ FieldDef ; visit_field_def, walk_field_def}
278
277
make_visit!{ ForeignItem ; visit_foreign_item, walk_item}
279
278
make_visit!{ GenericParam ; visit_generic_param, walk_generic_param}
280
279
make_visit!{ Item ; visit_item, walk_item}
@@ -314,6 +313,7 @@ macro_rules! make_ast_visitor {
314
313
make_visit!{ Crate ; visit_crate, walk_crate}
315
314
make_visit!{ EnumDef ; visit_enum_def, walk_enum_def}
316
315
make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
316
+ make_visit!{ FieldDef ; visit_field_def, walk_field_def}
317
317
make_visit!{ FnDecl ; visit_fn_decl, walk_fn_decl}
318
318
make_visit!{ FnRetTy ; visit_fn_ret_ty, walk_fn_ret_ty}
319
319
make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
@@ -441,6 +441,20 @@ macro_rules! make_ast_visitor {
441
441
return_result!( V )
442
442
}
443
443
444
+ pub fn walk_field_def<$( $lt, ) ? V : $trait$( <$lt>) ?>(
445
+ visitor: & mut V ,
446
+ fd: ref_t!( FieldDef )
447
+ ) -> result!( V ) {
448
+ let FieldDef { span, ident, vis, id, ty, attrs, is_placeholder: _ } = fd;
449
+ try_v!( visit_id!( visitor, id) ) ;
450
+ visit_list!( visitor, visit_attribute, attrs) ;
451
+ try_v!( visitor. visit_vis( vis) ) ;
452
+ visit_o!( ident, |ident| visitor. visit_ident( ident) ) ;
453
+ try_v!( visitor. visit_ty( ty) ) ;
454
+ try_v!( visit_span!( visitor, span) ) ;
455
+ return_result!( V )
456
+ }
457
+
444
458
pub fn walk_fn_decl<$( $lt, ) ? V : $trait$( <$lt>) ?>(
445
459
vis: & mut V ,
446
460
decl: ref_t!( FnDecl )
@@ -1298,15 +1312,6 @@ pub mod visit {
1298
1312
V :: Result :: output ( )
1299
1313
}
1300
1314
1301
- pub fn walk_field_def < ' a , V : Visitor < ' a > > ( visitor : & mut V , field : & ' a FieldDef ) -> V :: Result {
1302
- let FieldDef { attrs, id : _, span : _, vis, ident, ty, is_placeholder : _ } = field;
1303
- walk_list ! ( visitor, visit_attribute, attrs) ;
1304
- try_visit ! ( visitor. visit_vis( vis) ) ;
1305
- visit_opt ! ( visitor, visit_ident, ident) ;
1306
- try_visit ! ( visitor. visit_ty( ty) ) ;
1307
- V :: Result :: output ( )
1308
- }
1309
-
1310
1315
pub fn walk_block < ' a , V : Visitor < ' a > > ( visitor : & mut V , block : & ' a Block ) -> V :: Result {
1311
1316
let Block { stmts, id : _, rules : _, span : _, tokens : _, could_be_bare_literal : _ } = block;
1312
1317
walk_list ! ( visitor, visit_stmt, stmts) ;
@@ -2183,13 +2188,7 @@ pub mod mut_visit {
2183
2188
visitor : & mut T ,
2184
2189
mut fd : FieldDef ,
2185
2190
) -> SmallVec < [ FieldDef ; 1 ] > {
2186
- let FieldDef { span, ident, vis, id, ty, attrs, is_placeholder : _ } = & mut fd;
2187
- visitor. visit_id ( id) ;
2188
- visit_attrs ( visitor, attrs) ;
2189
- visitor. visit_vis ( vis) ;
2190
- visit_opt ( ident, |ident| visitor. visit_ident ( ident) ) ;
2191
- visitor. visit_ty ( ty) ;
2192
- visitor. visit_span ( span) ;
2191
+ visitor. visit_field_def ( & mut fd) ;
2193
2192
smallvec ! [ fd]
2194
2193
}
2195
2194
0 commit comments