@@ -1212,6 +1212,30 @@ macro_rules! make_ast_visitor {
1212
1212
return_result!( V )
1213
1213
}
1214
1214
1215
+ pub fn walk_generic_param<$( $lt, ) ? V : $trait$( <$lt>) ?>(
1216
+ vis: & mut V ,
1217
+ param: ref_t!( GenericParam )
1218
+ ) -> result!( V ) {
1219
+ let GenericParam { id, ident, attrs, bounds, kind, colon_span, is_placeholder: _ } = param;
1220
+ try_v!( visit_id!( vis, id) ) ;
1221
+ visit_list!( vis, visit_attribute, flat_map_attribute, attrs) ;
1222
+ try_v!( visit_ident!( vis, ident) ) ;
1223
+ visit_list!( vis, visit_param_bound, bounds; BoundKind :: Bound ) ;
1224
+ match kind {
1225
+ GenericParamKind :: Lifetime => { }
1226
+ GenericParamKind :: Type { default } => {
1227
+ visit_o!( default , |default | vis. visit_ty( default ) ) ;
1228
+ }
1229
+ GenericParamKind :: Const { ty, kw_span, default } => {
1230
+ try_v!( vis. visit_ty( ty) ) ;
1231
+ visit_o!( default , |default | vis. visit_anon_const( default ) ) ;
1232
+ try_v!( visit_span!( vis, kw_span) ) ;
1233
+ }
1234
+ }
1235
+ visit_o!( colon_span, |span| visit_span!( vis, span) ) ;
1236
+ return_result!( V )
1237
+ }
1238
+
1215
1239
derive_copy_clone!{
1216
1240
#[ derive( Debug ) ]
1217
1241
pub enum FnKind <' a> {
@@ -1556,26 +1580,6 @@ pub mod visit {
1556
1580
V :: Result :: output ( )
1557
1581
}
1558
1582
1559
- pub fn walk_generic_param < ' a , V : Visitor < ' a > > (
1560
- visitor : & mut V ,
1561
- param : & ' a GenericParam ,
1562
- ) -> V :: Result {
1563
- let GenericParam { id : _, ident, attrs, bounds, is_placeholder : _, kind, colon_span : _ } =
1564
- param;
1565
- walk_list ! ( visitor, visit_attribute, attrs) ;
1566
- try_visit ! ( visitor. visit_ident( * ident) ) ;
1567
- walk_list ! ( visitor, visit_param_bound, bounds, BoundKind :: Bound ) ;
1568
- match kind {
1569
- GenericParamKind :: Lifetime => ( ) ,
1570
- GenericParamKind :: Type { default } => visit_opt ! ( visitor, visit_ty, default ) ,
1571
- GenericParamKind :: Const { ty, default, kw_span : _ } => {
1572
- try_visit ! ( visitor. visit_ty( ty) ) ;
1573
- visit_opt ! ( visitor, visit_anon_const, default ) ;
1574
- }
1575
- }
1576
- V :: Result :: output ( )
1577
- }
1578
-
1579
1583
pub fn walk_where_predicate < ' a , V : Visitor < ' a > > (
1580
1584
visitor : & mut V ,
1581
1585
predicate : & ' a WherePredicate ,
@@ -2290,27 +2294,6 @@ pub mod mut_visit {
2290
2294
}
2291
2295
}
2292
2296
2293
- pub fn walk_generic_param < T : MutVisitor > ( vis : & mut T , param : & mut GenericParam ) {
2294
- let GenericParam { id, ident, attrs, bounds, kind, colon_span, is_placeholder : _ } = param;
2295
- vis. visit_id ( id) ;
2296
- visit_attrs ( vis, attrs) ;
2297
- vis. visit_ident ( ident) ;
2298
- visit_vec ( bounds, |bound| vis. visit_param_bound ( bound, BoundKind :: Bound ) ) ;
2299
- match kind {
2300
- GenericParamKind :: Lifetime => { }
2301
- GenericParamKind :: Type { default } => {
2302
- visit_opt ( default, |default| vis. visit_ty ( default) ) ;
2303
- }
2304
- GenericParamKind :: Const { ty, kw_span : _, default } => {
2305
- vis. visit_ty ( ty) ;
2306
- visit_opt ( default, |default| vis. visit_anon_const ( default) ) ;
2307
- }
2308
- }
2309
- if let Some ( colon_span) = colon_span {
2310
- vis. visit_span ( colon_span) ;
2311
- }
2312
- }
2313
-
2314
2297
fn walk_ty_alias_where_clauses < T : MutVisitor > ( vis : & mut T , tawcs : & mut TyAliasWhereClauses ) {
2315
2298
let TyAliasWhereClauses { before, after, split : _ } = tawcs;
2316
2299
let TyAliasWhereClause { has_where_token : _, span : span_before } = before;
0 commit comments