@@ -228,7 +228,6 @@ macro_rules! make_ast_visitor {
228228 // field access version will continue working and it would be easy to
229229 // forget to add handling for it.
230230
231- make_visit!{ FnHeader ; visit_fn_header, walk_fn_header}
232231 make_visit!{ MetaItem ; visit_meta_item, walk_meta_item}
233232 make_visit!{ MetaItemInner ; visit_meta_list_item, walk_meta_list_item}
234233
@@ -313,9 +312,6 @@ macro_rules! make_ast_visitor {
313312 fn visit_expr_post( & mut self , _ex: & ' ast Expr ) -> Self :: Result {
314313 Self :: Result :: output( )
315314 }
316- fn visit_fn_header( & mut self , _header: & ' ast FnHeader ) -> Self :: Result {
317- Self :: Result :: output( )
318- }
319315 } }
320316
321317 make_visit!{ AngleBracketedArgs ; visit_angle_bracketed_parameter_data, walk_angle_bracketed_parameter_data}
@@ -334,6 +330,7 @@ macro_rules! make_ast_visitor {
334330 make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
335331 make_visit!{ FieldDef ; visit_field_def, walk_field_def}
336332 make_visit!{ FnDecl ; visit_fn_decl, walk_fn_decl}
333+ make_visit!{ FnHeader ; visit_fn_header, walk_fn_header}
337334 make_visit!{ FnRetTy ; visit_fn_ret_ty, walk_fn_ret_ty}
338335 make_visit!{ ForeignMod ; visit_foreign_mod, walk_foreign_mod}
339336 make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
@@ -623,6 +620,17 @@ macro_rules! make_ast_visitor {
623620 return_result!( V )
624621 }
625622
623+ pub fn walk_fn_header<$( $lt, ) ? V : $trait$( <$lt>) ?>(
624+ vis: & mut V ,
625+ header: ref_t!( FnHeader )
626+ ) -> result!( V ) {
627+ let FnHeader { safety, coroutine_kind, constness, ext: _ } = header;
628+ try_v!( vis. visit_constness( constness) ) ;
629+ visit_o!( coroutine_kind, |ck| vis. visit_coroutine_kind( ck) ) ;
630+ try_v!( vis. visit_safety( safety) ) ;
631+ return_result!( V )
632+ }
633+
626634 pub fn walk_fn_ret_ty<$( $lt, ) ? V : $trait$( <$lt>) ?>(
627635 vis: & mut V ,
628636 ret_ty: ref_t!( FnRetTy )
@@ -2299,13 +2307,6 @@ pub mod mut_visit {
22992307 visit_opt ( expr, |expr| visitor. visit_expr ( expr) ) ;
23002308 }
23012309
2302- fn walk_fn_header < T : MutVisitor > ( vis : & mut T , header : & mut FnHeader ) {
2303- let FnHeader { safety, coroutine_kind, constness, ext : _ } = header;
2304- vis. visit_constness ( constness) ;
2305- coroutine_kind. as_mut ( ) . map ( |coroutine_kind| vis. visit_coroutine_kind ( coroutine_kind) ) ;
2306- vis. visit_safety ( safety) ;
2307- }
2308-
23092310 /// Mutates one item, returning the item again.
23102311 pub fn walk_flat_map_item (
23112312 vis : & mut impl MutVisitor ,
0 commit comments