rustc_middle::ty::visit

Trait TypeSuperVisitable

Source
pub trait TypeSuperVisitable<I>: TypeVisitable<I>
where I: Interner,
{ // Required method fn super_visit_with<V>( &self, visitor: &mut V, ) -> <V as TypeVisitor<I>>::Result where V: TypeVisitor<I>; }

Required Methods§

Source

fn super_visit_with<V>(&self, visitor: &mut V) -> <V as TypeVisitor<I>>::Result
where V: TypeVisitor<I>,

Provides a default visit for a recursive type of interest. This should only be called within TypeVisitor methods, when a non-custom traversal is desired for the value of the type of interest passed to that method. For example, in MyVisitor::visit_ty(ty), it is valid to call ty.super_visit_with(self), but any other visiting should be done with xyz.visit_with(self).

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'tcx> TypeSuperVisitable<TyCtxt<'tcx>> for Const<'tcx>

Source§

impl<'tcx> TypeSuperVisitable<TyCtxt<'tcx>> for Predicate<'tcx>

Source§

impl<'tcx> TypeSuperVisitable<TyCtxt<'tcx>> for Ty<'tcx>

Source§

impl<'tcx> TypeSuperVisitable<TyCtxt<'tcx>> for Clauses<'tcx>

Source§

impl<I, T> TypeSuperVisitable<I> for Binder<I, T>
where I: Interner, T: TypeVisitable<I>,