pub trait VisitAst: Visitor + Sized {
Show 97 methods
// Provided methods
fn visit<'a, T: AstVisitable>(
&'a mut self,
x: &T,
) -> ControlFlow<Self::Break> { ... }
fn visit_by_val<T: AstVisitable>(
self,
x: &T,
) -> ControlFlow<Self::Break, Self> { ... }
fn visit_by_val_infallible<T: AstVisitable>(self, x: &T) -> Self
where Self: Visitor<Break = Infallible> + Sized { ... }
fn visit_inner<T>(&mut self, x: &T) -> ControlFlow<Self::Break>
where T: for<'s> Drive<'s, AstVisitableWrapper<Self>> { ... }
fn visit_de_bruijn_id(&mut self, x: &DeBruijnId) -> ControlFlow<Self::Break> { ... }
fn enter_de_bruijn_id(&mut self, x: &DeBruijnId) { ... }
fn exit_de_bruijn_id(&mut self, x: &DeBruijnId) { ... }
fn visit_ty(&mut self, x: &Ty) -> ControlFlow<Self::Break> { ... }
fn enter_ty(&mut self, x: &Ty) { ... }
fn exit_ty(&mut self, x: &Ty) { ... }
fn visit_region(&mut self, x: &Region) -> ControlFlow<Self::Break> { ... }
fn enter_region(&mut self, x: &Region) { ... }
fn exit_region(&mut self, x: &Region) { ... }
fn visit_const_generic(
&mut self,
x: &ConstGeneric,
) -> ControlFlow<Self::Break> { ... }
fn enter_const_generic(&mut self, x: &ConstGeneric) { ... }
fn exit_const_generic(&mut self, x: &ConstGeneric) { ... }
fn visit_trait_ref(&mut self, x: &TraitRef) -> ControlFlow<Self::Break> { ... }
fn enter_trait_ref(&mut self, x: &TraitRef) { ... }
fn exit_trait_ref(&mut self, x: &TraitRef) { ... }
fn visit_fun_decl_ref(&mut self, x: &FunDeclRef) -> ControlFlow<Self::Break> { ... }
fn enter_fun_decl_ref(&mut self, x: &FunDeclRef) { ... }
fn exit_fun_decl_ref(&mut self, x: &FunDeclRef) { ... }
fn visit_global_decl_ref(
&mut self,
x: &GlobalDeclRef,
) -> ControlFlow<Self::Break> { ... }
fn enter_global_decl_ref(&mut self, x: &GlobalDeclRef) { ... }
fn exit_global_decl_ref(&mut self, x: &GlobalDeclRef) { ... }
fn visit_trait_decl_ref(
&mut self,
x: &TraitDeclRef,
) -> ControlFlow<Self::Break> { ... }
fn enter_trait_decl_ref(&mut self, x: &TraitDeclRef) { ... }
fn exit_trait_decl_ref(&mut self, x: &TraitDeclRef) { ... }
fn visit_trait_impl_ref(
&mut self,
x: &TraitImplRef,
) -> ControlFlow<Self::Break> { ... }
fn enter_trait_impl_ref(&mut self, x: &TraitImplRef) { ... }
fn exit_trait_impl_ref(&mut self, x: &TraitImplRef) { ... }
fn visit_generic_args(
&mut self,
x: &GenericArgs,
) -> ControlFlow<Self::Break> { ... }
fn enter_generic_args(&mut self, x: &GenericArgs) { ... }
fn exit_generic_args(&mut self, x: &GenericArgs) { ... }
fn visit_generic_params(
&mut self,
x: &GenericParams,
) -> ControlFlow<Self::Break> { ... }
fn enter_generic_params(&mut self, x: &GenericParams) { ... }
fn exit_generic_params(&mut self, x: &GenericParams) { ... }
fn visit_de_bruijn_var<T: AstVisitable + Idx>(
&mut self,
x: &DeBruijnVar<T>,
) -> ControlFlow<Self::Break> { ... }
fn enter_de_bruijn_var<T: AstVisitable + Idx>(&mut self, x: &DeBruijnVar<T>) { ... }
fn exit_de_bruijn_var<T: AstVisitable + Idx>(&mut self, x: &DeBruijnVar<T>) { ... }
fn visit_region_binder<T: AstVisitable>(
&mut self,
x: &RegionBinder<T>,
) -> ControlFlow<Self::Break> { ... }
fn enter_region_binder<T: AstVisitable>(&mut self, x: &RegionBinder<T>) { ... }
fn exit_region_binder<T: AstVisitable>(&mut self, x: &RegionBinder<T>) { ... }
fn visit_binder<T: AstVisitable>(
&mut self,
x: &Binder<T>,
) -> ControlFlow<Self::Break> { ... }
fn enter_binder<T: AstVisitable>(&mut self, x: &Binder<T>) { ... }
fn exit_binder<T: AstVisitable>(&mut self, x: &Binder<T>) { ... }
fn visit_llbc_statement(
&mut self,
x: &Statement,
) -> ControlFlow<Self::Break> { ... }
fn enter_llbc_statement(&mut self, x: &Statement) { ... }
fn exit_llbc_statement(&mut self, x: &Statement) { ... }
fn visit_ullbc_statement(
&mut self,
x: &Statement,
) -> ControlFlow<Self::Break> { ... }
fn enter_ullbc_statement(&mut self, x: &Statement) { ... }
fn exit_ullbc_statement(&mut self, x: &Statement) { ... }
fn visit_aggregate_kind(
&mut self,
x: &AggregateKind,
) -> ControlFlow<Self::Break> { ... }
fn enter_aggregate_kind(&mut self, x: &AggregateKind) { ... }
fn exit_aggregate_kind(&mut self, x: &AggregateKind) { ... }
fn visit_fn_ptr(&mut self, x: &FnPtr) -> ControlFlow<Self::Break> { ... }
fn enter_fn_ptr(&mut self, x: &FnPtr) { ... }
fn exit_fn_ptr(&mut self, x: &FnPtr) { ... }
fn visit_item_kind(&mut self, x: &ItemKind) -> ControlFlow<Self::Break> { ... }
fn enter_item_kind(&mut self, x: &ItemKind) { ... }
fn exit_item_kind(&mut self, x: &ItemKind) { ... }
fn visit_item_meta(&mut self, x: &ItemMeta) -> ControlFlow<Self::Break> { ... }
fn enter_item_meta(&mut self, x: &ItemMeta) { ... }
fn exit_item_meta(&mut self, x: &ItemMeta) { ... }
fn visit_span(&mut self, x: &Span) -> ControlFlow<Self::Break> { ... }
fn enter_span(&mut self, x: &Span) { ... }
fn exit_span(&mut self, x: &Span) { ... }
fn visit_fun_decl_id(&mut self, x: &FunDeclId) -> ControlFlow<Self::Break> { ... }
fn enter_fun_decl_id(&mut self, x: &FunDeclId) { ... }
fn exit_fun_decl_id(&mut self, x: &FunDeclId) { ... }
fn visit_global_decl_id(
&mut self,
x: &GlobalDeclId,
) -> ControlFlow<Self::Break> { ... }
fn enter_global_decl_id(&mut self, x: &GlobalDeclId) { ... }
fn exit_global_decl_id(&mut self, x: &GlobalDeclId) { ... }
fn visit_type_decl_id(&mut self, x: &TypeDeclId) -> ControlFlow<Self::Break> { ... }
fn enter_type_decl_id(&mut self, x: &TypeDeclId) { ... }
fn exit_type_decl_id(&mut self, x: &TypeDeclId) { ... }
fn visit_trait_decl_id(
&mut self,
x: &TraitDeclId,
) -> ControlFlow<Self::Break> { ... }
fn enter_trait_decl_id(&mut self, x: &TraitDeclId) { ... }
fn exit_trait_decl_id(&mut self, x: &TraitDeclId) { ... }
fn visit_trait_impl_id(
&mut self,
x: &TraitImplId,
) -> ControlFlow<Self::Break> { ... }
fn enter_trait_impl_id(&mut self, x: &TraitImplId) { ... }
fn exit_trait_impl_id(&mut self, x: &TraitImplId) { ... }
fn visit_fun_decl(&mut self, x: &FunDecl) -> ControlFlow<Self::Break> { ... }
fn enter_fun_decl(&mut self, x: &FunDecl) { ... }
fn exit_fun_decl(&mut self, x: &FunDecl) { ... }
fn visit_global_decl(&mut self, x: &GlobalDecl) -> ControlFlow<Self::Break> { ... }
fn enter_global_decl(&mut self, x: &GlobalDecl) { ... }
fn exit_global_decl(&mut self, x: &GlobalDecl) { ... }
fn visit_type_decl(&mut self, x: &TypeDecl) -> ControlFlow<Self::Break> { ... }
fn enter_type_decl(&mut self, x: &TypeDecl) { ... }
fn exit_type_decl(&mut self, x: &TypeDecl) { ... }
fn visit_trait_decl(&mut self, x: &TraitDecl) -> ControlFlow<Self::Break> { ... }
fn enter_trait_decl(&mut self, x: &TraitDecl) { ... }
fn exit_trait_decl(&mut self, x: &TraitDecl) { ... }
fn visit_trait_impl(&mut self, x: &TraitImpl) -> ControlFlow<Self::Break> { ... }
fn enter_trait_impl(&mut self, x: &TraitImpl) { ... }
fn exit_trait_impl(&mut self, x: &TraitImpl) { ... }
}
Provided Methods§
sourcefn visit<'a, T: AstVisitable>(&'a mut self, x: &T) -> ControlFlow<Self::Break>
fn visit<'a, T: AstVisitable>(&'a mut self, x: &T) -> ControlFlow<Self::Break>
Visit a visitable type. This calls the appropriate method of this trait on x
(visit_$ty
if it exists, visit_inner
if not).
sourcefn visit_by_val<T: AstVisitable>(self, x: &T) -> ControlFlow<Self::Break, Self>
fn visit_by_val<T: AstVisitable>(self, x: &T) -> ControlFlow<Self::Break, Self>
Convenience alias for method chaining.
sourcefn visit_by_val_infallible<T: AstVisitable>(self, x: &T) -> Selfwhere
Self: Visitor<Break = Infallible> + Sized,
fn visit_by_val_infallible<T: AstVisitable>(self, x: &T) -> Selfwhere
Self: Visitor<Break = Infallible> + Sized,
Convenience when the visitor does not return early.
sourcefn visit_inner<T>(&mut self, x: &T) -> ControlFlow<Self::Break>where
T: for<'s> Drive<'s, AstVisitableWrapper<Self>>,
fn visit_inner<T>(&mut self, x: &T) -> ControlFlow<Self::Break>where
T: for<'s> Drive<'s, AstVisitableWrapper<Self>>,
Visit the contents of x
. This calls self.visit()
on each field of T
. This
is available for any type whose contents are all #trait_name
.
sourcefn visit_de_bruijn_id(&mut self, x: &DeBruijnId) -> ControlFlow<Self::Break>
fn visit_de_bruijn_id(&mut self, x: &DeBruijnId) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_de_bruijn_id(&mut self, x: &DeBruijnId)
fn enter_de_bruijn_id(&mut self, x: &DeBruijnId)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_de_bruijn_id(&mut self, x: &DeBruijnId)
fn exit_de_bruijn_id(&mut self, x: &DeBruijnId)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_ty(&mut self, x: &Ty) -> ControlFlow<Self::Break>
fn visit_ty(&mut self, x: &Ty) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_ty(&mut self, x: &Ty)
fn enter_ty(&mut self, x: &Ty)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_ty(&mut self, x: &Ty)
fn exit_ty(&mut self, x: &Ty)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_region(&mut self, x: &Region) -> ControlFlow<Self::Break>
fn visit_region(&mut self, x: &Region) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_region(&mut self, x: &Region)
fn enter_region(&mut self, x: &Region)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_region(&mut self, x: &Region)
fn exit_region(&mut self, x: &Region)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_const_generic(&mut self, x: &ConstGeneric) -> ControlFlow<Self::Break>
fn visit_const_generic(&mut self, x: &ConstGeneric) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_const_generic(&mut self, x: &ConstGeneric)
fn enter_const_generic(&mut self, x: &ConstGeneric)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_const_generic(&mut self, x: &ConstGeneric)
fn exit_const_generic(&mut self, x: &ConstGeneric)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_ref(&mut self, x: &TraitRef) -> ControlFlow<Self::Break>
fn visit_trait_ref(&mut self, x: &TraitRef) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_ref(&mut self, x: &TraitRef)
fn enter_trait_ref(&mut self, x: &TraitRef)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_ref(&mut self, x: &TraitRef)
fn exit_trait_ref(&mut self, x: &TraitRef)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_fun_decl_ref(&mut self, x: &FunDeclRef) -> ControlFlow<Self::Break>
fn visit_fun_decl_ref(&mut self, x: &FunDeclRef) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_fun_decl_ref(&mut self, x: &FunDeclRef)
fn enter_fun_decl_ref(&mut self, x: &FunDeclRef)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_fun_decl_ref(&mut self, x: &FunDeclRef)
fn exit_fun_decl_ref(&mut self, x: &FunDeclRef)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_global_decl_ref(
&mut self,
x: &GlobalDeclRef,
) -> ControlFlow<Self::Break>
fn visit_global_decl_ref( &mut self, x: &GlobalDeclRef, ) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_global_decl_ref(&mut self, x: &GlobalDeclRef)
fn enter_global_decl_ref(&mut self, x: &GlobalDeclRef)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_global_decl_ref(&mut self, x: &GlobalDeclRef)
fn exit_global_decl_ref(&mut self, x: &GlobalDeclRef)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_decl_ref(&mut self, x: &TraitDeclRef) -> ControlFlow<Self::Break>
fn visit_trait_decl_ref(&mut self, x: &TraitDeclRef) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_decl_ref(&mut self, x: &TraitDeclRef)
fn enter_trait_decl_ref(&mut self, x: &TraitDeclRef)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_decl_ref(&mut self, x: &TraitDeclRef)
fn exit_trait_decl_ref(&mut self, x: &TraitDeclRef)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_impl_ref(&mut self, x: &TraitImplRef) -> ControlFlow<Self::Break>
fn visit_trait_impl_ref(&mut self, x: &TraitImplRef) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_impl_ref(&mut self, x: &TraitImplRef)
fn enter_trait_impl_ref(&mut self, x: &TraitImplRef)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_impl_ref(&mut self, x: &TraitImplRef)
fn exit_trait_impl_ref(&mut self, x: &TraitImplRef)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_generic_args(&mut self, x: &GenericArgs) -> ControlFlow<Self::Break>
fn visit_generic_args(&mut self, x: &GenericArgs) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_generic_args(&mut self, x: &GenericArgs)
fn enter_generic_args(&mut self, x: &GenericArgs)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_generic_args(&mut self, x: &GenericArgs)
fn exit_generic_args(&mut self, x: &GenericArgs)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_generic_params(
&mut self,
x: &GenericParams,
) -> ControlFlow<Self::Break>
fn visit_generic_params( &mut self, x: &GenericParams, ) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_generic_params(&mut self, x: &GenericParams)
fn enter_generic_params(&mut self, x: &GenericParams)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_generic_params(&mut self, x: &GenericParams)
fn exit_generic_params(&mut self, x: &GenericParams)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_de_bruijn_var<T: AstVisitable + Idx>(
&mut self,
x: &DeBruijnVar<T>,
) -> ControlFlow<Self::Break>
fn visit_de_bruijn_var<T: AstVisitable + Idx>( &mut self, x: &DeBruijnVar<T>, ) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_de_bruijn_var<T: AstVisitable + Idx>(&mut self, x: &DeBruijnVar<T>)
fn enter_de_bruijn_var<T: AstVisitable + Idx>(&mut self, x: &DeBruijnVar<T>)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_de_bruijn_var<T: AstVisitable + Idx>(&mut self, x: &DeBruijnVar<T>)
fn exit_de_bruijn_var<T: AstVisitable + Idx>(&mut self, x: &DeBruijnVar<T>)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_region_binder<T: AstVisitable>(
&mut self,
x: &RegionBinder<T>,
) -> ControlFlow<Self::Break>
fn visit_region_binder<T: AstVisitable>( &mut self, x: &RegionBinder<T>, ) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_region_binder<T: AstVisitable>(&mut self, x: &RegionBinder<T>)
fn enter_region_binder<T: AstVisitable>(&mut self, x: &RegionBinder<T>)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_region_binder<T: AstVisitable>(&mut self, x: &RegionBinder<T>)
fn exit_region_binder<T: AstVisitable>(&mut self, x: &RegionBinder<T>)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_binder<T: AstVisitable>(
&mut self,
x: &Binder<T>,
) -> ControlFlow<Self::Break>
fn visit_binder<T: AstVisitable>( &mut self, x: &Binder<T>, ) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_binder<T: AstVisitable>(&mut self, x: &Binder<T>)
fn enter_binder<T: AstVisitable>(&mut self, x: &Binder<T>)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_binder<T: AstVisitable>(&mut self, x: &Binder<T>)
fn exit_binder<T: AstVisitable>(&mut self, x: &Binder<T>)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_llbc_statement(&mut self, x: &Statement) -> ControlFlow<Self::Break>
fn visit_llbc_statement(&mut self, x: &Statement) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_llbc_statement(&mut self, x: &Statement)
fn enter_llbc_statement(&mut self, x: &Statement)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_llbc_statement(&mut self, x: &Statement)
fn exit_llbc_statement(&mut self, x: &Statement)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_ullbc_statement(&mut self, x: &Statement) -> ControlFlow<Self::Break>
fn visit_ullbc_statement(&mut self, x: &Statement) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_ullbc_statement(&mut self, x: &Statement)
fn enter_ullbc_statement(&mut self, x: &Statement)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_ullbc_statement(&mut self, x: &Statement)
fn exit_ullbc_statement(&mut self, x: &Statement)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_aggregate_kind(
&mut self,
x: &AggregateKind,
) -> ControlFlow<Self::Break>
fn visit_aggregate_kind( &mut self, x: &AggregateKind, ) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_aggregate_kind(&mut self, x: &AggregateKind)
fn enter_aggregate_kind(&mut self, x: &AggregateKind)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_aggregate_kind(&mut self, x: &AggregateKind)
fn exit_aggregate_kind(&mut self, x: &AggregateKind)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_fn_ptr(&mut self, x: &FnPtr) -> ControlFlow<Self::Break>
fn visit_fn_ptr(&mut self, x: &FnPtr) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_fn_ptr(&mut self, x: &FnPtr)
fn enter_fn_ptr(&mut self, x: &FnPtr)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_fn_ptr(&mut self, x: &FnPtr)
fn exit_fn_ptr(&mut self, x: &FnPtr)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_item_kind(&mut self, x: &ItemKind) -> ControlFlow<Self::Break>
fn visit_item_kind(&mut self, x: &ItemKind) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_item_kind(&mut self, x: &ItemKind)
fn enter_item_kind(&mut self, x: &ItemKind)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_item_kind(&mut self, x: &ItemKind)
fn exit_item_kind(&mut self, x: &ItemKind)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_item_meta(&mut self, x: &ItemMeta) -> ControlFlow<Self::Break>
fn visit_item_meta(&mut self, x: &ItemMeta) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_item_meta(&mut self, x: &ItemMeta)
fn enter_item_meta(&mut self, x: &ItemMeta)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_item_meta(&mut self, x: &ItemMeta)
fn exit_item_meta(&mut self, x: &ItemMeta)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_span(&mut self, x: &Span) -> ControlFlow<Self::Break>
fn visit_span(&mut self, x: &Span) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_span(&mut self, x: &Span)
fn enter_span(&mut self, x: &Span)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_span(&mut self, x: &Span)
fn exit_span(&mut self, x: &Span)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_fun_decl_id(&mut self, x: &FunDeclId) -> ControlFlow<Self::Break>
fn visit_fun_decl_id(&mut self, x: &FunDeclId) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_fun_decl_id(&mut self, x: &FunDeclId)
fn enter_fun_decl_id(&mut self, x: &FunDeclId)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_fun_decl_id(&mut self, x: &FunDeclId)
fn exit_fun_decl_id(&mut self, x: &FunDeclId)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_global_decl_id(&mut self, x: &GlobalDeclId) -> ControlFlow<Self::Break>
fn visit_global_decl_id(&mut self, x: &GlobalDeclId) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_global_decl_id(&mut self, x: &GlobalDeclId)
fn enter_global_decl_id(&mut self, x: &GlobalDeclId)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_global_decl_id(&mut self, x: &GlobalDeclId)
fn exit_global_decl_id(&mut self, x: &GlobalDeclId)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_type_decl_id(&mut self, x: &TypeDeclId) -> ControlFlow<Self::Break>
fn visit_type_decl_id(&mut self, x: &TypeDeclId) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_type_decl_id(&mut self, x: &TypeDeclId)
fn enter_type_decl_id(&mut self, x: &TypeDeclId)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_type_decl_id(&mut self, x: &TypeDeclId)
fn exit_type_decl_id(&mut self, x: &TypeDeclId)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_decl_id(&mut self, x: &TraitDeclId) -> ControlFlow<Self::Break>
fn visit_trait_decl_id(&mut self, x: &TraitDeclId) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_decl_id(&mut self, x: &TraitDeclId)
fn enter_trait_decl_id(&mut self, x: &TraitDeclId)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_decl_id(&mut self, x: &TraitDeclId)
fn exit_trait_decl_id(&mut self, x: &TraitDeclId)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_impl_id(&mut self, x: &TraitImplId) -> ControlFlow<Self::Break>
fn visit_trait_impl_id(&mut self, x: &TraitImplId) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_impl_id(&mut self, x: &TraitImplId)
fn enter_trait_impl_id(&mut self, x: &TraitImplId)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_impl_id(&mut self, x: &TraitImplId)
fn exit_trait_impl_id(&mut self, x: &TraitImplId)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_fun_decl(&mut self, x: &FunDecl) -> ControlFlow<Self::Break>
fn visit_fun_decl(&mut self, x: &FunDecl) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_fun_decl(&mut self, x: &FunDecl)
fn enter_fun_decl(&mut self, x: &FunDecl)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_fun_decl(&mut self, x: &FunDecl)
fn exit_fun_decl(&mut self, x: &FunDecl)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_global_decl(&mut self, x: &GlobalDecl) -> ControlFlow<Self::Break>
fn visit_global_decl(&mut self, x: &GlobalDecl) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_global_decl(&mut self, x: &GlobalDecl)
fn enter_global_decl(&mut self, x: &GlobalDecl)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_global_decl(&mut self, x: &GlobalDecl)
fn exit_global_decl(&mut self, x: &GlobalDecl)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_type_decl(&mut self, x: &TypeDecl) -> ControlFlow<Self::Break>
fn visit_type_decl(&mut self, x: &TypeDecl) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_type_decl(&mut self, x: &TypeDecl)
fn enter_type_decl(&mut self, x: &TypeDecl)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_type_decl(&mut self, x: &TypeDecl)
fn exit_type_decl(&mut self, x: &TypeDecl)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_decl(&mut self, x: &TraitDecl) -> ControlFlow<Self::Break>
fn visit_trait_decl(&mut self, x: &TraitDecl) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_decl(&mut self, x: &TraitDecl)
fn enter_trait_decl(&mut self, x: &TraitDecl)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_decl(&mut self, x: &TraitDecl)
fn exit_trait_decl(&mut self, x: &TraitDecl)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
sourcefn visit_trait_impl(&mut self, x: &TraitImpl) -> ControlFlow<Self::Break>
fn visit_trait_impl(&mut self, x: &TraitImpl) -> ControlFlow<Self::Break>
Overrideable method called when visiting a $ty
. When overriding this method,
call self.visit_inner(x)
to keep recursively visiting the type, or don’t call
it if the contents of x
should not be visited.
The default implementation calls enter_$ty
then visit_inner
then exit_$ty
.
sourcefn enter_trait_impl(&mut self, x: &TraitImpl)
fn enter_trait_impl(&mut self, x: &TraitImpl)
Called when starting to visit a $ty
(unless visit_$ty
is overriden).
sourcefn exit_trait_impl(&mut self, x: &TraitImpl)
fn exit_trait_impl(&mut self, x: &TraitImpl)
Called when finished visiting a $ty
(unless visit_$ty
is overriden).
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.