flux_middle::rty::fold

Trait TypeVisitor

Source
pub trait TypeVisitor: Sized {
    type BreakTy = !;

    // Provided methods
    fn visit_binder<T: TypeVisitable>(
        &mut self,
        t: &Binder<T>,
    ) -> ControlFlow<Self::BreakTy> { ... }
    fn visit_expr(&mut self, expr: &Expr) -> ControlFlow<Self::BreakTy> { ... }
    fn visit_sort(&mut self, sort: &Sort) -> ControlFlow<Self::BreakTy> { ... }
    fn visit_ty(&mut self, ty: &Ty) -> ControlFlow<Self::BreakTy> { ... }
    fn visit_bty(&mut self, bty: &BaseTy) -> ControlFlow<Self::BreakTy> { ... }
}

Provided Associated Types§

Provided Methods§

Source

fn visit_binder<T: TypeVisitable>( &mut self, t: &Binder<T>, ) -> ControlFlow<Self::BreakTy>

Source

fn visit_expr(&mut self, expr: &Expr) -> ControlFlow<Self::BreakTy>

Source

fn visit_sort(&mut self, sort: &Sort) -> ControlFlow<Self::BreakTy>

Source

fn visit_ty(&mut self, ty: &Ty) -> ControlFlow<Self::BreakTy>

Source

fn visit_bty(&mut self, bty: &BaseTy) -> ControlFlow<Self::BreakTy>

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§