Skip to content

Commit 360c1d8

Browse files
committed
Unify {visit,walk}_fn_header
1 parent 349f01f commit 360c1d8

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

compiler/rustc_ast/src/visitors.rs

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,6 @@ macro_rules! make_ast_visitor {
228228
// field access version will continue working and it would be easy to
229229
// forget to add handling for it.
230230

231-
make_visit!{FnHeader; visit_fn_header, walk_fn_header}
232231
make_visit!{MetaItem; visit_meta_item, walk_meta_item}
233232
make_visit!{MetaItemInner; visit_meta_list_item, walk_meta_list_item}
234233

@@ -313,9 +312,6 @@ macro_rules! make_ast_visitor {
313312
fn visit_expr_post(&mut self, _ex: &'ast Expr) -> Self::Result {
314313
Self::Result::output()
315314
}
316-
fn visit_fn_header(&mut self, _header: &'ast FnHeader) -> Self::Result {
317-
Self::Result::output()
318-
}
319315
}}
320316

321317
make_visit!{AngleBracketedArgs; visit_angle_bracketed_parameter_data, walk_angle_bracketed_parameter_data}
@@ -334,6 +330,7 @@ macro_rules! make_ast_visitor {
334330
make_visit!{ExprField; visit_expr_field, walk_expr_field}
335331
make_visit!{FieldDef; visit_field_def, walk_field_def}
336332
make_visit!{FnDecl; visit_fn_decl, walk_fn_decl}
333+
make_visit!{FnHeader; visit_fn_header, walk_fn_header}
337334
make_visit!{FnRetTy; visit_fn_ret_ty, walk_fn_ret_ty}
338335
make_visit!{ForeignMod; visit_foreign_mod, walk_foreign_mod}
339336
make_visit!{FormatArgs; visit_format_args, walk_format_args}
@@ -623,6 +620,17 @@ macro_rules! make_ast_visitor {
623620
return_result!(V)
624621
}
625622

623+
pub fn walk_fn_header<$($lt,)? V: $trait$(<$lt>)?>(
624+
vis: &mut V,
625+
header: ref_t!(FnHeader)
626+
) -> result!(V) {
627+
let FnHeader { safety, coroutine_kind, constness, ext: _ } = header;
628+
try_v!(vis.visit_constness(constness));
629+
visit_o!(coroutine_kind, |ck| vis.visit_coroutine_kind(ck));
630+
try_v!(vis.visit_safety(safety));
631+
return_result!(V)
632+
}
633+
626634
pub fn walk_fn_ret_ty<$($lt,)? V: $trait$(<$lt>)?>(
627635
vis: &mut V,
628636
ret_ty: ref_t!(FnRetTy)
@@ -2299,13 +2307,6 @@ pub mod mut_visit {
22992307
visit_opt(expr, |expr| visitor.visit_expr(expr));
23002308
}
23012309

2302-
fn walk_fn_header<T: MutVisitor>(vis: &mut T, header: &mut FnHeader) {
2303-
let FnHeader { safety, coroutine_kind, constness, ext: _ } = header;
2304-
vis.visit_constness(constness);
2305-
coroutine_kind.as_mut().map(|coroutine_kind| vis.visit_coroutine_kind(coroutine_kind));
2306-
vis.visit_safety(safety);
2307-
}
2308-
23092310
/// Mutates one item, returning the item again.
23102311
pub fn walk_flat_map_item(
23112312
vis: &mut impl MutVisitor,

0 commit comments

Comments
 (0)