Skip to content

Commit 7666241

Browse files
committed
Unify walk_enum_def
1 parent a9e02fa commit 7666241

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

compiler/rustc_ast/src/visitors.rs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,15 @@ macro_rules! make_ast_visitor {
596596
return_result!(V)
597597
}
598598

599+
pub fn walk_enum_def<$($lt,)? V: $trait$(<$lt>)?>(
600+
vis: &mut V,
601+
enum_def: ref_t!(EnumDef)
602+
) -> result!(V) {
603+
let EnumDef { variants } = enum_def;
604+
visit_list!(vis, visit_variant, flat_map_variant, variants);
605+
return_result!(V)
606+
}
607+
599608
make_walk_flat_map!{Arm, walk_flat_map_arm, visit_arm}
600609
make_walk_flat_map!{ExprField, walk_flat_map_expr_field, visit_expr_field}
601610
make_walk_flat_map!{FieldDef, walk_flat_map_field_def, visit_field_def}
@@ -878,14 +887,6 @@ pub mod visit {
878887
walk_assoc_item(visitor, item, AssocCtxt::Trait /*ignored*/)
879888
}
880889

881-
pub fn walk_enum_def<'a, V: Visitor<'a>>(
882-
visitor: &mut V,
883-
EnumDef { variants }: &'a EnumDef,
884-
) -> V::Result {
885-
walk_list!(visitor, visit_variant, variants);
886-
V::Result::output()
887-
}
888-
889890
pub fn walk_variant<'a, V: Visitor<'a>>(visitor: &mut V, variant: &'a Variant) -> V::Result
890891
where
891892
V: Visitor<'a>,
@@ -2945,10 +2946,6 @@ pub mod mut_visit {
29452946
vis.visit_span(span);
29462947
}
29472948

2948-
pub fn walk_enum_def<T: MutVisitor>(vis: &mut T, EnumDef { variants }: &mut EnumDef) {
2949-
variants.flat_map_in_place(|variant| vis.flat_map_variant(variant));
2950-
}
2951-
29522949
/// Some value for the AST node that is valid but possibly meaningless. Similar
29532950
/// to `Default` but not intended for wide use. The value will never be used
29542951
/// meaningfully, it exists just to support unwinding in `visit_clobber` in the

0 commit comments

Comments
 (0)