Trait chalk_ir::visit::TypeSuperVisitable

source ·
pub trait TypeSuperVisitable<I: Interner>: TypeVisitable<I> {
    // Required method
    fn super_visit_with<B>(
        &self,
        visitor: &mut dyn TypeVisitor<I, BreakTy = B>,
        outer_binder: DebruijnIndex,
    ) -> ControlFlow<B>;
}
Expand description

For types where “visit” invokes a callback on the visitor, the TypeSuperVisitable trait captures the recursive behavior that visits all the contents of the type.

Required Methods§

source

fn super_visit_with<B>( &self, visitor: &mut dyn TypeVisitor<I, BreakTy = B>, outer_binder: DebruijnIndex, ) -> ControlFlow<B>

Recursively visits the type contents.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<I> TypeSuperVisitable<I> for Ty<I>
where I: Interner,

“Super visit” for a type invokes the more detailed callbacks on the type

source§

impl<I: Interner> TypeSuperVisitable<I> for DomainGoal<I>

source§

impl<I: Interner> TypeSuperVisitable<I> for WhereClause<I>

source§

impl<I: Interner> TypeSuperVisitable<I> for Const<I>

source§

impl<I: Interner> TypeSuperVisitable<I> for Goal<I>

source§

impl<I: Interner> TypeSuperVisitable<I> for Lifetime<I>

source§

impl<I: Interner> TypeSuperVisitable<I> for ProgramClause<I>