Skip to main content

ItemComparer

Struct ItemComparer 

Source
struct ItemComparer<'a> {
    remap: &'a HashMap<ItemId, ItemId>,
}
Expand description

Compares items modulo the target-specific differences we want to ignore.

Fields§

§remap: &'a HashMap<ItemId, ItemId>

Implementations§

Source§

impl ItemComparer<'_>

Source

fn compare_items( &mut self, left: ItemRef<'_>, right: ItemRef<'_>, ) -> ControlFlow<()>

Source

fn compare_fun_interface( &mut self, left: &FunDecl, right: &FunDecl, ) -> ControlFlow<()>

Source

fn compare_ids<Id: Copy + Into<ItemId>>( &self, left: &Id, right: &Id, ) -> ControlFlow<()>

Source

fn compare_iters<'a, T: AstVisitable + 'a>( &mut self, left: impl Iterator<Item = &'a T>, right: impl Iterator<Item = &'a T>, ) -> ControlFlow<()>

Trait Implementations§

Source§

impl<'a, T: AstVisitable> VisitTwo<'a, T> for ItemComparer<'_>

Source§

fn visit(&mut self, left: &'a T, right: &'a T) -> ControlFlow<Self::Break>

Visit this value.
Source§

impl Visitor for ItemComparer<'_>

Source§

type Break = ()

The type used for early-return, if the visitor supports it. Use an empty type like std::convert::Infallible if the visitor does not short-circuit.
Source§

impl ZipAst for ItemComparer<'_>

Source§

fn visit_type_decl_id( &mut self, left: &TypeDeclId, right: &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. Read more
Source§

fn visit_fun_decl_id( &mut self, left: &FunDeclId, right: &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. Read more
Source§

fn visit_global_decl_id( &mut self, left: &GlobalDeclId, right: &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. Read more
Source§

fn visit_trait_decl_id( &mut self, left: &TraitDeclId, right: &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. Read more
Source§

fn visit_trait_impl_id( &mut self, left: &TraitImplId, right: &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. Read more
Source§

fn visit_name(&mut self, left: &Name, right: &Name) -> 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. Read more
Source§

fn visit_span( &mut self, _left: &Span, _right: &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. Read more
Source§

fn visit_attr_info( &mut self, left: &AttrInfo, right: &AttrInfo, ) -> 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. Read more
Source§

fn visit_item_meta( &mut self, left: &ItemMeta, right: &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. Read more
Source§

fn visit_type_decl( &mut self, left: &TypeDecl, right: &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. Read more
Source§

fn visit<'a, T: AstVisitable>( &'a mut self, x: &T, y: &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).
Source§

fn visit_by_val<T: AstVisitable>( self, x: &T, y: &T, ) -> ControlFlow<Self::Break, Self>

Convenience alias for method chaining.
Source§

fn visit_inner<T>(&mut self, x: &T, y: &T) -> ControlFlow<Self::Break>
where T: AstVisitable + for<'s> DriveTwo<'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.
Source§

fn enter_fun_decl_id(&mut self, x: &FunDeclId, y: &FunDeclId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_fun_decl_id(&mut self, x: &FunDeclId, y: &FunDeclId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_global_decl_id(&mut self, x: &GlobalDeclId, y: &GlobalDeclId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_global_decl_id(&mut self, x: &GlobalDeclId, y: &GlobalDeclId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_type_decl_id(&mut self, x: &TypeDeclId, y: &TypeDeclId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_type_decl_id(&mut self, x: &TypeDeclId, y: &TypeDeclId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_trait_decl_id(&mut self, x: &TraitDeclId, y: &TraitDeclId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_decl_id(&mut self, x: &TraitDeclId, y: &TraitDeclId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_trait_impl_id(&mut self, x: &TraitImplId, y: &TraitImplId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_impl_id(&mut self, x: &TraitImplId, y: &TraitImplId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_file_id(&mut self, x: &FileId, y: &FileId) -> 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. Read more
Source§

fn enter_file_id(&mut self, x: &FileId, y: &FileId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_file_id(&mut self, x: &FileId, y: &FileId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_type_decl_ref( &mut self, x: &TypeDeclRef, y: &TypeDeclRef, ) -> 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. Read more
Source§

fn enter_type_decl_ref(&mut self, x: &TypeDeclRef, y: &TypeDeclRef)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_type_decl_ref(&mut self, x: &TypeDeclRef, y: &TypeDeclRef)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_fun_decl_ref( &mut self, x: &FunDeclRef, y: &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. Read more
Source§

fn enter_fun_decl_ref(&mut self, x: &FunDeclRef, y: &FunDeclRef)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_fun_decl_ref(&mut self, x: &FunDeclRef, y: &FunDeclRef)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_global_decl_ref( &mut self, x: &GlobalDeclRef, y: &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. Read more
Source§

fn enter_global_decl_ref(&mut self, x: &GlobalDeclRef, y: &GlobalDeclRef)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_global_decl_ref(&mut self, x: &GlobalDeclRef, y: &GlobalDeclRef)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_decl_ref( &mut self, x: &TraitDeclRef, y: &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. Read more
Source§

fn enter_trait_decl_ref(&mut self, x: &TraitDeclRef, y: &TraitDeclRef)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_decl_ref(&mut self, x: &TraitDeclRef, y: &TraitDeclRef)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_impl_ref( &mut self, x: &TraitImplRef, y: &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. Read more
Source§

fn enter_trait_impl_ref(&mut self, x: &TraitImplRef, y: &TraitImplRef)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_impl_ref(&mut self, x: &TraitImplRef, y: &TraitImplRef)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_impl_elem( &mut self, x: &ImplElem, y: &ImplElem, ) -> 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. Read more
Source§

fn enter_impl_elem(&mut self, x: &ImplElem, y: &ImplElem)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_impl_elem(&mut self, x: &ImplElem, y: &ImplElem)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_fun_decl( &mut self, x: &FunDecl, y: &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. Read more
Source§

fn enter_fun_decl(&mut self, x: &FunDecl, y: &FunDecl)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_fun_decl(&mut self, x: &FunDecl, y: &FunDecl)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_global_decl( &mut self, x: &GlobalDecl, y: &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. Read more
Source§

fn enter_global_decl(&mut self, x: &GlobalDecl, y: &GlobalDecl)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_global_decl(&mut self, x: &GlobalDecl, y: &GlobalDecl)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_type_decl(&mut self, x: &TypeDecl, y: &TypeDecl)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_type_decl(&mut self, x: &TypeDecl, y: &TypeDecl)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_decl( &mut self, x: &TraitDecl, y: &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. Read more
Source§

fn enter_trait_decl(&mut self, x: &TraitDecl, y: &TraitDecl)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_decl(&mut self, x: &TraitDecl, y: &TraitDecl)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_impl( &mut self, x: &TraitImpl, y: &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. Read more
Source§

fn enter_trait_impl(&mut self, x: &TraitImpl, y: &TraitImpl)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_impl(&mut self, x: &TraitImpl, y: &TraitImpl)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_item_meta(&mut self, x: &ItemMeta, y: &ItemMeta)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_item_meta(&mut self, x: &ItemMeta, y: &ItemMeta)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_name(&mut self, x: &Name, y: &Name)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_name(&mut self, x: &Name, y: &Name)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_span(&mut self, x: &Span, y: &Span)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_span(&mut self, x: &Span, y: &Span)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_attribute( &mut self, x: &Attribute, y: &Attribute, ) -> 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. Read more
Source§

fn enter_attribute(&mut self, x: &Attribute, y: &Attribute)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_attribute(&mut self, x: &Attribute, y: &Attribute)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn enter_attr_info(&mut self, x: &AttrInfo, y: &AttrInfo)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_attr_info(&mut self, x: &AttrInfo, y: &AttrInfo)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_type_source( &mut self, x: &TypeSource, y: &TypeSource, ) -> 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. Read more
Source§

fn enter_type_source(&mut self, x: &TypeSource, y: &TypeSource)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_type_source(&mut self, x: &TypeSource, y: &TypeSource)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_fun_source( &mut self, x: &FunSource, y: &FunSource, ) -> 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. Read more
Source§

fn enter_fun_source(&mut self, x: &FunSource, y: &FunSource)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_fun_source(&mut self, x: &FunSource, y: &FunSource)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_global_source( &mut self, x: &GlobalSource, y: &GlobalSource, ) -> 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. Read more
Source§

fn enter_global_source(&mut self, x: &GlobalSource, y: &GlobalSource)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_global_source(&mut self, x: &GlobalSource, y: &GlobalSource)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_decl_source( &mut self, x: &TraitDeclSource, y: &TraitDeclSource, ) -> 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. Read more
Source§

fn enter_trait_decl_source(&mut self, x: &TraitDeclSource, y: &TraitDeclSource)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_decl_source(&mut self, x: &TraitDeclSource, y: &TraitDeclSource)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_impl_source( &mut self, x: &TraitImplSource, y: &TraitImplSource, ) -> 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. Read more
Source§

fn enter_trait_impl_source(&mut self, x: &TraitImplSource, y: &TraitImplSource)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_impl_source(&mut self, x: &TraitImplSource, y: &TraitImplSource)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_assoc_ty( &mut self, x: &TraitAssocTy, y: &TraitAssocTy, ) -> 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. Read more
Source§

fn enter_trait_assoc_ty(&mut self, x: &TraitAssocTy, y: &TraitAssocTy)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_assoc_ty(&mut self, x: &TraitAssocTy, y: &TraitAssocTy)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_assoc_const( &mut self, x: &TraitAssocConst, y: &TraitAssocConst, ) -> 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. Read more
Source§

fn enter_trait_assoc_const(&mut self, x: &TraitAssocConst, y: &TraitAssocConst)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_assoc_const(&mut self, x: &TraitAssocConst, y: &TraitAssocConst)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_method( &mut self, x: &TraitMethod, y: &TraitMethod, ) -> 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. Read more
Source§

fn enter_trait_method(&mut self, x: &TraitMethod, y: &TraitMethod)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_method(&mut self, x: &TraitMethod, y: &TraitMethod)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_assoc_ty_impl( &mut self, x: &TraitAssocTyImpl, y: &TraitAssocTyImpl, ) -> 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. Read more
Source§

fn enter_trait_assoc_ty_impl( &mut self, x: &TraitAssocTyImpl, y: &TraitAssocTyImpl, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_assoc_ty_impl( &mut self, x: &TraitAssocTyImpl, y: &TraitAssocTyImpl, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_de_bruijn_id( &mut self, x: &DeBruijnId, y: &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. Read more
Source§

fn enter_de_bruijn_id(&mut self, x: &DeBruijnId, y: &DeBruijnId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_de_bruijn_id(&mut self, x: &DeBruijnId, y: &DeBruijnId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_ty(&mut self, x: &Ty, y: &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. Read more
Source§

fn enter_ty(&mut self, x: &Ty, y: &Ty)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_ty(&mut self, x: &Ty, y: &Ty)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_ty_kind(&mut self, x: &TyKind, y: &TyKind) -> 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. Read more
Source§

fn enter_ty_kind(&mut self, x: &TyKind, y: &TyKind)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_ty_kind(&mut self, x: &TyKind, y: &TyKind)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_region(&mut self, x: &Region, y: &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. Read more
Source§

fn enter_region(&mut self, x: &Region, y: &Region)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_region(&mut self, x: &Region, y: &Region)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_ref( &mut self, x: &TraitRef, y: &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. Read more
Source§

fn enter_trait_ref(&mut self, x: &TraitRef, y: &TraitRef)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_ref(&mut self, x: &TraitRef, y: &TraitRef)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_ref_contents( &mut self, x: &TraitRefContents, y: &TraitRefContents, ) -> 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. Read more
Source§

fn enter_trait_ref_contents( &mut self, x: &TraitRefContents, y: &TraitRefContents, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_ref_contents( &mut self, x: &TraitRefContents, y: &TraitRefContents, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_ref_kind( &mut self, x: &TraitRefKind, y: &TraitRefKind, ) -> 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. Read more
Source§

fn enter_trait_ref_kind(&mut self, x: &TraitRefKind, y: &TraitRefKind)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_ref_kind(&mut self, x: &TraitRefKind, y: &TraitRefKind)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_generic_args( &mut self, x: &GenericArgs, y: &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. Read more
Source§

fn enter_generic_args(&mut self, x: &GenericArgs, y: &GenericArgs)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_generic_args(&mut self, x: &GenericArgs, y: &GenericArgs)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_generic_params( &mut self, x: &GenericParams, y: &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. Read more
Source§

fn enter_generic_params(&mut self, x: &GenericParams, y: &GenericParams)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_generic_params(&mut self, x: &GenericParams, y: &GenericParams)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_param( &mut self, x: &TraitParam, y: &TraitParam, ) -> 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. Read more
Source§

fn enter_trait_param(&mut self, x: &TraitParam, y: &TraitParam)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_param(&mut self, x: &TraitParam, y: &TraitParam)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_clause_id( &mut self, x: &TraitClauseId, y: &TraitClauseId, ) -> 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. Read more
Source§

fn enter_trait_clause_id(&mut self, x: &TraitClauseId, y: &TraitClauseId)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_clause_id(&mut self, x: &TraitClauseId, y: &TraitClauseId)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_trait_type_constraint( &mut self, x: &TraitTypeConstraint, y: &TraitTypeConstraint, ) -> 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. Read more
Source§

fn enter_trait_type_constraint( &mut self, x: &TraitTypeConstraint, y: &TraitTypeConstraint, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_trait_type_constraint( &mut self, x: &TraitTypeConstraint, y: &TraitTypeConstraint, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_de_bruijn_var<T: AstVisitable + Idx>( &mut self, x: &DeBruijnVar<T>, y: &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. Read more
Source§

fn enter_de_bruijn_var<T: AstVisitable + Idx>( &mut self, x: &DeBruijnVar<T>, y: &DeBruijnVar<T>, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_de_bruijn_var<T: AstVisitable + Idx>( &mut self, x: &DeBruijnVar<T>, y: &DeBruijnVar<T>, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_region_binder<T: AstVisitable>( &mut self, x: &RegionBinder<T>, y: &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. Read more
Source§

fn enter_region_binder<T: AstVisitable>( &mut self, x: &RegionBinder<T>, y: &RegionBinder<T>, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_region_binder<T: AstVisitable>( &mut self, x: &RegionBinder<T>, y: &RegionBinder<T>, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_binder<T: AstVisitable>( &mut self, x: &Binder<T>, y: &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. Read more
Source§

fn enter_binder<T: AstVisitable>(&mut self, x: &Binder<T>, y: &Binder<T>)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_binder<T: AstVisitable>(&mut self, x: &Binder<T>, y: &Binder<T>)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_llbc_block(&mut self, x: &Block, y: &Block) -> 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. Read more
Source§

fn enter_llbc_block(&mut self, x: &Block, y: &Block)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_llbc_block(&mut self, x: &Block, y: &Block)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_llbc_statement( &mut self, x: &Statement, y: &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. Read more
Source§

fn enter_llbc_statement(&mut self, x: &Statement, y: &Statement)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_llbc_statement(&mut self, x: &Statement, y: &Statement)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_ullbc_statement( &mut self, x: &Statement, y: &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. Read more
Source§

fn enter_ullbc_statement(&mut self, x: &Statement, y: &Statement)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_ullbc_statement(&mut self, x: &Statement, y: &Statement)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_ullbc_terminator( &mut self, x: &Terminator, y: &Terminator, ) -> 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. Read more
Source§

fn enter_ullbc_terminator(&mut self, x: &Terminator, y: &Terminator)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_ullbc_terminator(&mut self, x: &Terminator, y: &Terminator)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_abort_kind( &mut self, x: &AbortKind, y: &AbortKind, ) -> 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. Read more
Source§

fn enter_abort_kind(&mut self, x: &AbortKind, y: &AbortKind)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_abort_kind(&mut self, x: &AbortKind, y: &AbortKind)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_aggregate_kind( &mut self, x: &AggregateKind, y: &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. Read more
Source§

fn enter_aggregate_kind(&mut self, x: &AggregateKind, y: &AggregateKind)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_aggregate_kind(&mut self, x: &AggregateKind, y: &AggregateKind)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_fn_ptr(&mut self, x: &FnPtr, y: &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. Read more
Source§

fn enter_fn_ptr(&mut self, x: &FnPtr, y: &FnPtr)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_fn_ptr(&mut self, x: &FnPtr, y: &FnPtr)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_fun_sig(&mut self, x: &FunSig, y: &FunSig) -> 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. Read more
Source§

fn enter_fun_sig(&mut self, x: &FunSig, y: &FunSig)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_fun_sig(&mut self, x: &FunSig, y: &FunSig)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_constant_expr( &mut self, x: &ConstantExpr, y: &ConstantExpr, ) -> 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. Read more
Source§

fn enter_constant_expr(&mut self, x: &ConstantExpr, y: &ConstantExpr)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_constant_expr(&mut self, x: &ConstantExpr, y: &ConstantExpr)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_constant_expr_kind( &mut self, x: &ConstantExprKind, y: &ConstantExprKind, ) -> 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. Read more
Source§

fn enter_constant_expr_kind( &mut self, x: &ConstantExprKind, y: &ConstantExprKind, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_constant_expr_kind( &mut self, x: &ConstantExprKind, y: &ConstantExprKind, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_inhabited_predicate( &mut self, x: &InhabitedPredicate, y: &InhabitedPredicate, ) -> 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. Read more
Source§

fn enter_inhabited_predicate( &mut self, x: &InhabitedPredicate, y: &InhabitedPredicate, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_inhabited_predicate( &mut self, x: &InhabitedPredicate, y: &InhabitedPredicate, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_inhabited_predicate_kind( &mut self, x: &InhabitedPredicateKind, y: &InhabitedPredicateKind, ) -> 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. Read more
Source§

fn enter_inhabited_predicate_kind( &mut self, x: &InhabitedPredicateKind, y: &InhabitedPredicateKind, )

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_inhabited_predicate_kind( &mut self, x: &InhabitedPredicateKind, y: &InhabitedPredicateKind, )

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_size_expr( &mut self, x: &SizeExpr, y: &SizeExpr, ) -> 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. Read more
Source§

fn enter_size_expr(&mut self, x: &SizeExpr, y: &SizeExpr)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_size_expr(&mut self, x: &SizeExpr, y: &SizeExpr)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_size_expr_kind( &mut self, x: &SizeExprKind, y: &SizeExprKind, ) -> 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. Read more
Source§

fn enter_size_expr_kind(&mut self, x: &SizeExprKind, y: &SizeExprKind)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_size_expr_kind(&mut self, x: &SizeExprKind, y: &SizeExprKind)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_metadata_value( &mut self, x: &MetadataValue, y: &MetadataValue, ) -> 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. Read more
Source§

fn enter_metadata_value(&mut self, x: &MetadataValue, y: &MetadataValue)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_metadata_value(&mut self, x: &MetadataValue, y: &MetadataValue)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_place(&mut self, x: &Place, y: &Place) -> 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. Read more
Source§

fn enter_place(&mut self, x: &Place, y: &Place)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_place(&mut self, x: &Place, y: &Place)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_projection_elem( &mut self, x: &ProjectionElem, y: &ProjectionElem, ) -> 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. Read more
Source§

fn enter_projection_elem(&mut self, x: &ProjectionElem, y: &ProjectionElem)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_projection_elem(&mut self, x: &ProjectionElem, y: &ProjectionElem)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_rvalue(&mut self, x: &Rvalue, y: &Rvalue) -> 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. Read more
Source§

fn enter_rvalue(&mut self, x: &Rvalue, y: &Rvalue)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_rvalue(&mut self, x: &Rvalue, y: &Rvalue)

Called when finished visiting a $ty (unless visit_$ty is overriden).
Source§

fn visit_body(&mut self, x: &Body, y: &Body) -> 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. Read more
Source§

fn enter_body(&mut self, x: &Body, y: &Body)

Called when starting to visit a $ty (unless visit_$ty is overriden).
Source§

fn exit_body(&mut self, x: &Body, y: &Body)

Called when finished visiting a $ty (unless visit_$ty is overriden).

Auto Trait Implementations§

§

impl<'a> Freeze for ItemComparer<'a>

§

impl<'a> RefUnwindSafe for ItemComparer<'a>

§

impl<'a> Send for ItemComparer<'a>

§

impl<'a> Sync for ItemComparer<'a>

§

impl<'a> Unpin for ItemComparer<'a>

§

impl<'a> UnsafeUnpin for ItemComparer<'a>

§

impl<'a> UnwindSafe for ItemComparer<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Mappable for T
where T: Any + Send + Sync,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more