Skip to content

Commit 7c50026

Browse files
committed
Unify walk_qself
1 parent 52d0889 commit 7c50026

File tree

1 file changed

+12
-16
lines changed

1 file changed

+12
-16
lines changed

compiler/rustc_ast/src/visitors.rs

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -552,6 +552,18 @@ macro_rules! make_ast_visitor {
552552
return_result!(V)
553553
}
554554

555+
pub fn walk_qself<$($lt,)? V: $trait$(<$lt>)?>(
556+
vis: &mut V,
557+
qself: ref_t!(Option<P<QSelf>>)
558+
) -> result!(V) {
559+
if let Some(qself) = qself {
560+
let QSelf { ty, path_span, position: _ } = &$($mut)? **qself;
561+
try_v!(vis.visit_ty(ty));
562+
try_v!(visit_span!(vis, path_span));
563+
}
564+
return_result!(V)
565+
}
566+
555567
pub fn walk_param<$($lt,)? V: $trait$(<$lt>)?>(
556568
vis: &mut V,
557569
param: ref_t!(Param)
@@ -999,14 +1011,6 @@ pub mod visit {
9991011
V::Result::output()
10001012
}
10011013

1002-
fn walk_qself<'a, V: Visitor<'a>>(visitor: &mut V, qself: &'a Option<P<QSelf>>) -> V::Result {
1003-
if let Some(qself) = qself {
1004-
let QSelf { ty, path_span: _, position: _ } = &**qself;
1005-
try_visit!(visitor.visit_ty(ty));
1006-
}
1007-
V::Result::output()
1008-
}
1009-
10101014
pub fn walk_path<'a, V: Visitor<'a>>(visitor: &mut V, path: &'a Path) -> V::Result {
10111015
let Path { span: _, segments, tokens: _ } = path;
10121016
walk_list!(visitor, visit_path_segment, segments);
@@ -1817,14 +1821,6 @@ pub mod mut_visit {
18171821
vis.visit_span(span);
18181822
}
18191823

1820-
fn walk_qself<T: MutVisitor>(vis: &mut T, qself: &mut Option<P<QSelf>>) {
1821-
visit_opt(qself, |qself| {
1822-
let QSelf { ty, path_span, position: _ } = &mut **qself;
1823-
vis.visit_ty(ty);
1824-
vis.visit_span(path_span);
1825-
})
1826-
}
1827-
18281824
fn walk_generic_arg<T: MutVisitor>(vis: &mut T, arg: &mut GenericArg) {
18291825
match arg {
18301826
GenericArg::Lifetime(lt) => vis.visit_lifetime(lt, LifetimeCtxt::GenericArg),

0 commit comments

Comments
 (0)