@@ -276,7 +276,6 @@ macro_rules! make_ast_visitor {
276276
277277 make_visit!{ Arm ; visit_arm, walk_arm}
278278 make_visit!{ AssocItem , ctxt: AssocCtxt ; visit_assoc_item, walk_assoc_item}
279- make_visit!{ EnumDef ; visit_enum_def, walk_enum_def}
280279 make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
281280 make_visit!{ FieldDef ; visit_field_def, walk_field_def}
282281 make_visit!{ ForeignItem ; visit_foreign_item, walk_item}
@@ -322,6 +321,7 @@ macro_rules! make_ast_visitor {
322321 make_visit!{ CaptureBy ; visit_capture_by, walk_capture_by}
323322 make_visit!{ ClosureBinder ; visit_closure_binder, walk_closure_binder}
324323 make_visit!{ Crate ; visit_crate, walk_crate}
324+ make_visit!{ EnumDef ; visit_enum_def, walk_enum_def}
325325 make_visit!{ FnDecl ; visit_fn_decl, walk_fn_decl}
326326 make_visit!{ FnRetTy ; visit_fn_ret_ty, walk_fn_ret_ty}
327327 make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
@@ -404,6 +404,15 @@ macro_rules! make_ast_visitor {
404404 return_result!( V )
405405 }
406406
407+ pub fn walk_enum_def<$( $lt, ) ? V : $trait$( <$lt>) ?>(
408+ vis: & mut V ,
409+ enum_def: ref_t!( EnumDef )
410+ ) -> result!( V ) {
411+ let EnumDef { variants } = enum_def;
412+ visit_list!( vis, visit_variant, flat_map_variant, variants) ;
413+ return_result!( V )
414+ }
415+
407416 pub fn walk_fn_decl<$( $lt, ) ? V : $trait$( <$lt>) ?>(
408417 vis: & mut V ,
409418 decl: ref_t!( FnDecl )
@@ -818,14 +827,6 @@ pub mod visit {
818827 walk_assoc_item ( visitor, item, AssocCtxt :: Trait /*ignored*/ )
819828 }
820829
821- pub fn walk_enum_def < ' a , V : Visitor < ' a > > (
822- visitor : & mut V ,
823- EnumDef { variants } : & ' a EnumDef ,
824- ) -> V :: Result {
825- walk_list ! ( visitor, visit_variant, variants) ;
826- V :: Result :: output ( )
827- }
828-
829830 pub fn walk_variant < ' a , V : Visitor < ' a > > ( visitor : & mut V , variant : & ' a Variant ) -> V :: Result
830831 where
831832 V : Visitor < ' a > ,
@@ -2307,9 +2308,9 @@ pub mod mut_visit {
23072308 visit_opt ( ty, |ty| vis. visit_ty ( ty) ) ;
23082309 walk_ty_alias_where_clauses ( vis, where_clauses) ;
23092310 }
2310- ItemKind :: Enum ( EnumDef { variants } , generics) => {
2311+ ItemKind :: Enum ( enum_def , generics) => {
23112312 vis. visit_generics ( generics) ;
2312- variants . flat_map_in_place ( |variant| vis. flat_map_variant ( variant ) ) ;
2313+ vis. visit_enum_def ( enum_def ) ;
23132314 }
23142315 ItemKind :: Struct ( variant_data, generics)
23152316 | ItemKind :: Union ( variant_data, generics) => {
0 commit comments