1
Fork 0

Fold visit into ty

This commit is contained in:
Michael Goulet 2025-03-13 17:09:25 +00:00
parent dc0cdfd753
commit e5a2220327
56 changed files with 100 additions and 117 deletions

View file

@ -36,12 +36,12 @@ pub(super) fn type_visitable_derive(
s.add_bounds(synstructure::AddBounds::Generics);
let body_visit = s.each(|bind| {
quote! {
match ::rustc_middle::ty::visit::VisitorResult::branch(
::rustc_middle::ty::visit::TypeVisitable::visit_with(#bind, __visitor)
match ::rustc_middle::ty::VisitorResult::branch(
::rustc_middle::ty::TypeVisitable::visit_with(#bind, __visitor)
) {
::core::ops::ControlFlow::Continue(()) => {},
::core::ops::ControlFlow::Break(r) => {
return ::rustc_middle::ty::visit::VisitorResult::from_residual(r);
return ::rustc_middle::ty::VisitorResult::from_residual(r);
},
}
}
@ -49,14 +49,14 @@ pub(super) fn type_visitable_derive(
s.bind_with(|_| synstructure::BindStyle::Move);
s.bound_impl(
quote!(::rustc_middle::ty::visit::TypeVisitable<::rustc_middle::ty::TyCtxt<'tcx>>),
quote!(::rustc_middle::ty::TypeVisitable<::rustc_middle::ty::TyCtxt<'tcx>>),
quote! {
fn visit_with<__V: ::rustc_middle::ty::visit::TypeVisitor<::rustc_middle::ty::TyCtxt<'tcx>>>(
fn visit_with<__V: ::rustc_middle::ty::TypeVisitor<::rustc_middle::ty::TyCtxt<'tcx>>>(
&self,
__visitor: &mut __V
) -> __V::Result {
match *self { #body_visit }
<__V::Result as ::rustc_middle::ty::visit::VisitorResult>::output()
<__V::Result as ::rustc_middle::ty::VisitorResult>::output()
}
},
)