@@ -311,6 +311,7 @@ macro_rules! make_ast_visitor {
311
311
make_visit!{ Arm ; visit_arm, walk_arm}
312
312
make_visit!{ AssocItemConstraint ; visit_assoc_item_constraint, walk_assoc_item_constraint}
313
313
make_visit!{ Attribute ; visit_attribute, walk_attribute}
314
+ make_visit!{ Block ; visit_block, walk_block}
314
315
make_visit!{ CaptureBy ; visit_capture_by, walk_capture_by}
315
316
make_visit!{ ClosureBinder ; visit_closure_binder, walk_closure_binder}
316
317
make_visit!{ Crate ; visit_crate, walk_crate}
@@ -348,7 +349,6 @@ macro_rules! make_ast_visitor {
348
349
make_visit!{ WhereClause ; visit_where_clause, walk_where_clause}
349
350
make_visit!{ WherePredicate ; visit_where_predicate, walk_where_predicate}
350
351
351
- make_visit!{ P !( Block ) ; visit_block, walk_block}
352
352
make_visit!{ P !( Expr ) ; visit_expr, walk_expr}
353
353
make_visit!{ P !( Pat ) ; visit_pat, walk_pat}
354
354
make_visit!{ P !( Ty ) ; visit_ty, walk_ty}
@@ -398,6 +398,18 @@ macro_rules! make_ast_visitor {
398
398
return_result!( V )
399
399
}
400
400
401
+ pub fn walk_block<$( $lt, ) ? V : $trait$( <$lt>) ?>(
402
+ vis: & mut V ,
403
+ block: ref_t!( Block )
404
+ ) -> result!( V ) {
405
+ let Block { id, stmts, rules: _, span, tokens, could_be_bare_literal: _ } = block;
406
+ try_v!( visit_id!( vis, id) ) ;
407
+ visit_list!( vis, visit_stmt, flat_map_stmt, stmts) ;
408
+ visit_lazy_tts!( vis, tokens) ;
409
+ try_v!( visit_span!( vis, span) ) ;
410
+ return_result!( V )
411
+ }
412
+
401
413
pub fn walk_capture_by<$( $lt, ) ? V : $trait$( <$lt>) ?>(
402
414
vis: & mut V ,
403
415
capture_by: ref_t!( CaptureBy )
@@ -1388,12 +1400,6 @@ pub mod visit {
1388
1400
V :: Result :: output ( )
1389
1401
}
1390
1402
1391
- pub fn walk_block < ' a , V : Visitor < ' a > > ( visitor : & mut V , block : & ' a Block ) -> V :: Result {
1392
- let Block { stmts, id : _, rules : _, span : _, tokens : _, could_be_bare_literal : _ } = block;
1393
- walk_list ! ( visitor, visit_stmt, stmts) ;
1394
- V :: Result :: output ( )
1395
- }
1396
-
1397
1403
pub fn walk_stmt < ' a , V : Visitor < ' a > > ( visitor : & mut V , statement : & ' a Stmt ) -> V :: Result {
1398
1404
let Stmt { id : _, kind, span : _ } = statement;
1399
1405
match kind {
@@ -2160,15 +2166,6 @@ pub mod mut_visit {
2160
2166
smallvec ! [ f]
2161
2167
}
2162
2168
2163
- pub fn walk_block < T : MutVisitor > ( vis : & mut T , block : & mut P < Block > ) {
2164
- let Block { id, stmts, rules : _, span, tokens, could_be_bare_literal : _ } =
2165
- block. deref_mut ( ) ;
2166
- vis. visit_id ( id) ;
2167
- stmts. flat_map_in_place ( |stmt| vis. flat_map_stmt ( stmt) ) ;
2168
- visit_lazy_tts ( vis, tokens) ;
2169
- vis. visit_span ( span) ;
2170
- }
2171
-
2172
2169
pub fn walk_item_kind (
2173
2170
kind : & mut impl WalkItemKind ,
2174
2171
span : Span ,
0 commit comments