@@ -527,7 +527,7 @@ macro_rules! common_visitor_and_walkers {
527527 }
528528 }
529529
530- fn visit_defaultness<$( $lt, ) ? V : $Visitor$( <$lt>) ?>( vis: & mut V , defaultness: & $( $lt) ? $( $mut) ? Defaultness ) -> V :: Result {
530+ pub fn visit_defaultness<$( $lt, ) ? V : $Visitor$( <$lt>) ?>( vis: & mut V , defaultness: & $( $lt) ? $( $mut) ? Defaultness ) -> V :: Result {
531531 match defaultness {
532532 Defaultness :: Default ( span) => visit_span( vis, span) ,
533533 Defaultness :: Final => {
@@ -808,7 +808,7 @@ macro_rules! common_visitor_and_walkers {
808808 visit_foreign_items( vis, items)
809809 }
810810
811- fn walk_define_opaques<$( $lt, ) ? V : $Visitor$( <$lt>) ?>(
811+ pub fn walk_define_opaques<$( $lt, ) ? V : $Visitor$( <$lt>) ?>(
812812 visitor: & mut V ,
813813 define_opaque: & $( $lt) ? $( $mut) ? Option <ThinVec <( NodeId , Path ) >>,
814814 ) -> V :: Result {
@@ -1226,6 +1226,27 @@ macro_rules! common_visitor_and_walkers {
12261226 V :: Result :: output( )
12271227 }
12281228
1229+ pub fn walk_stmt<$( $lt, ) ? V : $Visitor$( <$lt>) ?>(
1230+ vis: & mut V ,
1231+ statement: & $( $lt) ? $( $mut) ? Stmt ,
1232+ ) -> V :: Result {
1233+ let Stmt { id, kind, span } = statement;
1234+ try_visit!( visit_id( vis, id) ) ;
1235+ match kind {
1236+ StmtKind :: Let ( local) => try_visit!( vis. visit_local( local) ) ,
1237+ StmtKind :: Item ( item) => try_visit!( vis. visit_item( item) ) ,
1238+ StmtKind :: Expr ( expr) | StmtKind :: Semi ( expr) => try_visit!( vis. visit_expr( expr) ) ,
1239+ StmtKind :: Empty => { }
1240+ StmtKind :: MacCall ( mac) => {
1241+ let MacCallStmt { mac, attrs, style: _, tokens: _ } = & $( $mut) ? * * mac;
1242+ walk_list!( vis, visit_attribute, attrs) ;
1243+ try_visit!( vis. visit_mac_call( mac) ) ;
1244+ }
1245+ }
1246+ try_visit!( visit_span( vis, span) ) ;
1247+ V :: Result :: output( )
1248+ }
1249+
12291250 pub fn walk_path<$( $lt, ) ? V : $Visitor$( <$lt>) ?>(
12301251 vis: & mut V ,
12311252 path: & $( $lt) ? $( $mut) ? Path ,
@@ -1945,20 +1966,3 @@ fn visit_nested_use_tree<'a, V: Visitor<'a>>(
19451966) -> V :: Result {
19461967 vis. visit_nested_use_tree ( nested_tree, nested_id)
19471968}
1948-
1949- pub fn walk_stmt < ' a , V : Visitor < ' a > > ( visitor : & mut V , statement : & ' a Stmt ) -> V :: Result {
1950- let Stmt { id, kind, span : _ } = statement;
1951- try_visit ! ( visit_id( visitor, id) ) ;
1952- match kind {
1953- StmtKind :: Let ( local) => try_visit ! ( visitor. visit_local( local) ) ,
1954- StmtKind :: Item ( item) => try_visit ! ( visitor. visit_item( item) ) ,
1955- StmtKind :: Expr ( expr) | StmtKind :: Semi ( expr) => try_visit ! ( visitor. visit_expr( expr) ) ,
1956- StmtKind :: Empty => { }
1957- StmtKind :: MacCall ( mac) => {
1958- let MacCallStmt { mac, attrs, style : _, tokens : _ } = & * * mac;
1959- walk_list ! ( visitor, visit_attribute, attrs) ;
1960- try_visit ! ( visitor. visit_mac_call( mac) ) ;
1961- }
1962- }
1963- V :: Result :: output ( )
1964- }
0 commit comments