@@ -437,6 +437,20 @@ macro_rules! make_ast_visitor {
437437 return_result!( V )
438438 }
439439
440+ pub fn walk_crate<$( $lt, ) ? V : $trait$( <$lt>) ?>(
441+ vis: & mut V ,
442+ krate: ref_t!( Crate )
443+ ) -> result!( V ) {
444+ let Crate { attrs, items, spans, id, is_placeholder: _ } = krate;
445+ try_v!( visit_id!( vis, id) ) ;
446+ visit_list!( vis, visit_attribute, attrs) ;
447+ visit_list!( vis, visit_item, flat_map_item, items) ;
448+ let ModSpans { inner_span, inject_use_span } = spans;
449+ try_v!( visit_span!( vis, inner_span) ) ;
450+ try_v!( visit_span!( vis, inject_use_span) ) ;
451+ return_result!( V )
452+ }
453+
440454 pub fn walk_enum_def<$( $lt, ) ? V : $trait$( <$lt>) ?>(
441455 vis: & mut V ,
442456 enum_def: ref_t!( EnumDef )
@@ -1117,13 +1131,6 @@ pub mod visit {
11171131
11181132 make_ast_visitor ! ( Visitor <' ast>) ;
11191133
1120- pub fn walk_crate < ' a , V : Visitor < ' a > > ( visitor : & mut V , krate : & ' a Crate ) -> V :: Result {
1121- let Crate { attrs, items, spans : _, id : _, is_placeholder : _ } = krate;
1122- walk_list ! ( visitor, visit_attribute, attrs) ;
1123- walk_list ! ( visitor, visit_item, items) ;
1124- V :: Result :: output ( )
1125- }
1126-
11271134 impl WalkItemKind for ItemKind {
11281135 fn walk < ' a , V : Visitor < ' a > > (
11291136 & ' a self ,
@@ -2387,16 +2394,6 @@ pub mod mut_visit {
23872394 visit_safety ( vis, safety) ;
23882395 }
23892396
2390- pub fn walk_crate < T : MutVisitor > ( vis : & mut T , krate : & mut Crate ) {
2391- let Crate { attrs, items, spans, id, is_placeholder : _ } = krate;
2392- vis. visit_id ( id) ;
2393- visit_attrs ( vis, attrs) ;
2394- items. flat_map_in_place ( |item| vis. flat_map_item ( item) ) ;
2395- let ModSpans { inner_span, inject_use_span } = spans;
2396- vis. visit_span ( inner_span) ;
2397- vis. visit_span ( inject_use_span) ;
2398- }
2399-
24002397 /// Mutates one item, returning the item again.
24012398 pub fn walk_flat_map_item < K : WalkItemKind > (
24022399 visitor : & mut impl MutVisitor ,
0 commit comments