Skip to content

Commit 9e4eeb1

Browse files
committed
Unify walk_generics
1 parent 2a849e2 commit 9e4eeb1

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

compiler/rustc_ast/src/visitors.rs

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -579,6 +579,17 @@ macro_rules! make_ast_visitor {
579579
return_result!(V)
580580
}
581581

582+
pub fn walk_generics<$($lt,)? V: $trait$(<$lt>)?>(
583+
vis: &mut V,
584+
generics: ref_t!(Generics)
585+
) -> result!(V) {
586+
let Generics { params, where_clause, span } = generics;
587+
visit_list!(vis, visit_generic_param, flat_map_generic_param, params);
588+
try_v!(vis.visit_where_clause(where_clause));
589+
try_v!(visit_span!(vis, span));
590+
return_result!(V)
591+
}
592+
582593
make_walk_flat_map!{Arm, walk_flat_map_arm, visit_arm}
583594
make_walk_flat_map!{ExprField, walk_flat_map_expr_field, visit_expr_field}
584595
make_walk_flat_map!{FieldDef, walk_flat_map_field_def, visit_field_def}
@@ -1153,13 +1164,6 @@ pub mod visit {
11531164
V::Result::output()
11541165
}
11551166

1156-
pub fn walk_generics<'a, V: Visitor<'a>>(visitor: &mut V, generics: &'a Generics) -> V::Result {
1157-
let Generics { params, where_clause, span: _ } = generics;
1158-
walk_list!(visitor, visit_generic_param, params);
1159-
try_visit!(visitor.visit_where_clause(where_clause));
1160-
V::Result::output()
1161-
}
1162-
11631167
pub fn walk_where_predicate<'a, V: Visitor<'a>>(
11641168
visitor: &mut V,
11651169
predicate: &'a WherePredicate,
@@ -2244,13 +2248,6 @@ pub mod mut_visit {
22442248
}
22452249
}
22462250

2247-
fn walk_generics<T: MutVisitor>(vis: &mut T, generics: &mut Generics) {
2248-
let Generics { params, where_clause, span } = generics;
2249-
params.flat_map_in_place(|param| vis.flat_map_generic_param(param));
2250-
vis.visit_where_clause(where_clause);
2251-
vis.visit_span(span);
2252-
}
2253-
22542251
fn walk_ty_alias_where_clauses<T: MutVisitor>(vis: &mut T, tawcs: &mut TyAliasWhereClauses) {
22552252
let TyAliasWhereClauses { before, after, split: _ } = tawcs;
22562253
let TyAliasWhereClause { has_where_token: _, span: span_before } = before;

0 commit comments

Comments
 (0)