@@ -1019,6 +1019,23 @@ macro_rules! make_ast_visitor {
10191019 return_result!( V )
10201020 }
10211021
1022+ pub fn walk_vis<$( $lt, ) ? V : $trait$( <$lt>) ?>(
1023+ vis: & mut V ,
1024+ visibility: ref_t!( Visibility )
1025+ ) -> result!( V ) {
1026+ let Visibility { kind, span, tokens } = visibility;
1027+ match kind {
1028+ VisibilityKind :: Public | VisibilityKind :: Inherited => { }
1029+ VisibilityKind :: Restricted { path, id, shorthand: _ } => {
1030+ try_v!( visit_id!( vis, id) ) ;
1031+ try_v!( vis. visit_path( path, * id) ) ;
1032+ }
1033+ }
1034+ visit_lazy_tts!( vis, tokens) ;
1035+ try_v!( visit_span!( vis, span) ) ;
1036+ return_result!( V )
1037+ }
1038+
10221039 make_walk_flat_map!{ Arm , walk_flat_map_arm, visit_arm}
10231040 make_walk_flat_map!{ Attribute , walk_flat_map_attribute, visit_attribute}
10241041 make_walk_flat_map!{ ExprField , walk_flat_map_expr_field, visit_expr_field}
@@ -1715,17 +1732,6 @@ pub mod visit {
17151732 visitor. visit_expr_post ( expression)
17161733 }
17171734
1718- pub fn walk_vis < ' a , V : Visitor < ' a > > ( visitor : & mut V , vis : & ' a Visibility ) -> V :: Result {
1719- let Visibility { kind, span : _, tokens : _ } = vis;
1720- match kind {
1721- VisibilityKind :: Restricted { path, id, shorthand : _ } => {
1722- try_visit ! ( visitor. visit_path( path, * id) ) ;
1723- }
1724- VisibilityKind :: Public | VisibilityKind :: Inherited => { }
1725- }
1726- V :: Result :: output ( )
1727- }
1728-
17291735 pub fn walk_attribute < ' a , V : Visitor < ' a > > ( visitor : & mut V , attr : & ' a Attribute ) -> V :: Result {
17301736 let Attribute { kind, id : _, style : _, span : _ } = attr;
17311737 match kind {
@@ -2791,19 +2797,6 @@ pub mod mut_visit {
27912797 }
27922798 }
27932799
2794- fn walk_vis < T : MutVisitor > ( vis : & mut T , visibility : & mut Visibility ) {
2795- let Visibility { kind, span, tokens } = visibility;
2796- match kind {
2797- VisibilityKind :: Public | VisibilityKind :: Inherited => { }
2798- VisibilityKind :: Restricted { path, id, shorthand : _ } => {
2799- vis. visit_id ( id) ;
2800- vis. visit_path ( path, * id) ;
2801- }
2802- }
2803- visit_lazy_tts ( vis, tokens) ;
2804- vis. visit_span ( span) ;
2805- }
2806-
28072800 /// Some value for the AST node that is valid but possibly meaningless. Similar
28082801 /// to `Default` but not intended for wide use. The value will never be used
28092802 /// meaningfully, it exists just to support unwinding in `visit_clobber` in the
0 commit comments