@@ -406,6 +406,33 @@ macro_rules! make_ast_visitor {
406406 return_result!( V )
407407 }
408408
409+ pub fn walk_assoc_item_constraint<$( $lt, ) ? V : $trait$( <$lt>) ?>(
410+ vis: & mut V ,
411+ constraint: ref_t!( AssocItemConstraint )
412+ ) -> result!( V ) {
413+ let AssocItemConstraint { id, ident, gen_args, kind, span } = constraint;
414+ try_v!( visit_id!( vis, id) ) ;
415+ try_v!( vis. visit_ident( ident) ) ;
416+ visit_o!( gen_args, |gen_args| vis. visit_generic_args( gen_args) ) ;
417+ match kind {
418+ AssocItemConstraintKind :: Equality { term } => {
419+ match term {
420+ Term :: Ty ( ty) => {
421+ try_v!( vis. visit_ty( ty) ) ;
422+ }
423+ Term :: Const ( c) => {
424+ try_v!( vis. visit_anon_const( c) ) ;
425+ }
426+ }
427+ }
428+ AssocItemConstraintKind :: Bound { bounds } => {
429+ visit_list!( vis, visit_param_bound, bounds; BoundKind :: Bound ) ;
430+ }
431+ }
432+ try_v!( visit_span!( vis, span) ) ;
433+ return_result!( V )
434+ }
435+
409436 pub fn walk_attr_args<$( $lt, ) ? V : $trait$( <$lt>) ?>(
410437 vis: & mut V ,
411438 args: ref_t!( AttrArgs )
@@ -1364,25 +1391,6 @@ pub mod visit {
13641391 walk_assoc_item ( visitor, item, AssocCtxt :: Trait /*ignored*/ )
13651392 }
13661393
1367- pub fn walk_assoc_item_constraint < ' a , V : Visitor < ' a > > (
1368- visitor : & mut V ,
1369- constraint : & ' a AssocItemConstraint ,
1370- ) -> V :: Result {
1371- let AssocItemConstraint { id : _, ident, gen_args, kind, span : _ } = constraint;
1372- try_visit ! ( visitor. visit_ident( ident) ) ;
1373- visit_opt ! ( visitor, visit_generic_args, gen_args) ;
1374- match kind {
1375- AssocItemConstraintKind :: Equality { term } => match term {
1376- Term :: Ty ( ty) => try_visit ! ( visitor. visit_ty( ty) ) ,
1377- Term :: Const ( c) => try_visit ! ( visitor. visit_anon_const( c) ) ,
1378- } ,
1379- AssocItemConstraintKind :: Bound { bounds } => {
1380- walk_list ! ( visitor, visit_param_bound, bounds, BoundKind :: Bound ) ;
1381- }
1382- }
1383- V :: Result :: output ( )
1384- }
1385-
13861394 impl WalkItemKind for ForeignItemKind {
13871395 fn walk < ' a , V : Visitor < ' a > > (
13881396 & ' a self ,
@@ -1839,27 +1847,6 @@ pub mod mut_visit {
18391847 smallvec ! [ arm]
18401848 }
18411849
1842- fn walk_assoc_item_constraint < T : MutVisitor > (
1843- vis : & mut T ,
1844- AssocItemConstraint { id, ident, gen_args, kind, span } : & mut AssocItemConstraint ,
1845- ) {
1846- vis. visit_id ( id) ;
1847- vis. visit_ident ( ident) ;
1848- if let Some ( gen_args) = gen_args {
1849- vis. visit_generic_args ( gen_args) ;
1850- }
1851- match kind {
1852- AssocItemConstraintKind :: Equality { term } => match term {
1853- Term :: Ty ( ty) => vis. visit_ty ( ty) ,
1854- Term :: Const ( c) => vis. visit_anon_const ( c) ,
1855- } ,
1856- AssocItemConstraintKind :: Bound { bounds } => {
1857- visit_bounds ( vis, bounds, BoundKind :: Bound )
1858- }
1859- }
1860- vis. visit_span ( span) ;
1861- }
1862-
18631850 fn walk_foreign_mod < T : MutVisitor > ( vis : & mut T , foreign_mod : & mut ForeignMod ) {
18641851 let ForeignMod { safety, abi : _, items } = foreign_mod;
18651852 vis. visit_safety ( safety) ;
0 commit comments