@@ -1316,6 +1316,22 @@ macro_rules! make_ast_visitor {
1316
1316
return_result!( V )
1317
1317
}
1318
1318
1319
+ pub fn walk_item<$( $lt, ) ? V : $trait$( <$lt>) ?>(
1320
+ visitor: & mut V ,
1321
+ item: ref_t!( Item <impl WalkItemKind >) ,
1322
+ ) -> result!( V ) {
1323
+ let Item { id, span, ident, vis, attrs, kind, tokens } = item;
1324
+ try_v!( visit_id!( visitor, id) ) ;
1325
+ visit_list!( visitor, visit_attribute, flat_map_attribute, attrs) ;
1326
+ try_v!( visitor. visit_vis( vis) ) ;
1327
+ try_v!( visit_ident!( visitor, ident) ) ;
1328
+ try_v!( kind. walk( * id, * span, vis, ident, visitor) ) ;
1329
+ visit_lazy_tts!( visitor, tokens) ;
1330
+ try_v!( visit_span!( visitor, span) ) ;
1331
+ return_result!( V )
1332
+ }
1333
+
1334
+
1319
1335
pub fn walk_assoc_item<$( $lt, ) ? V : $trait$( <$lt>) ?>(
1320
1336
visitor: & mut V ,
1321
1337
item: ref_t!( Item <AssocItemKind >) ,
@@ -1714,18 +1730,6 @@ pub mod visit {
1714
1730
1715
1731
make_ast_visitor ! ( Visitor <' ast>) ;
1716
1732
1717
- pub fn walk_item < ' a , V : Visitor < ' a > > (
1718
- visitor : & mut V ,
1719
- item : & ' a Item < impl WalkItemKind > ,
1720
- ) -> V :: Result {
1721
- let Item { id, span, ident, vis, attrs, kind, tokens : _ } = item;
1722
- walk_list ! ( visitor, visit_attribute, attrs) ;
1723
- try_visit ! ( visitor. visit_vis( vis) ) ;
1724
- try_visit ! ( visitor. visit_ident( * ident) ) ;
1725
- try_visit ! ( kind. walk( * id, * span, vis, ident, visitor) ) ;
1726
- V :: Result :: output ( )
1727
- }
1728
-
1729
1733
pub fn walk_stmt < ' a , V : Visitor < ' a > > ( visitor : & mut V , statement : & ' a Stmt ) -> V :: Result {
1730
1734
let Stmt { id : _, kind, span : _ } = statement;
1731
1735
match kind {
0 commit comments