Struct rustc_hir::hir::ImplItemRef
source · [−]pub struct ImplItemRef {
pub id: ImplItemId,
pub ident: Ident,
pub kind: AssocItemKind,
pub span: Span,
pub trait_item_def_id: Option<DefId>,
}
Expand description
A reference from an impl to one of its associated items. This contains the item’s ID, naturally, but also the item’s name and some other high-level details (like whether it is an associated type or method, and whether it is public). This allows other passes to find the impl they want without loading the ID (which means fewer edges in the incremental compilation graph).
Fields
id: ImplItemId
ident: Ident
kind: AssocItemKind
span: Span
trait_item_def_id: Option<DefId>
When we are in a trait impl, link to the trait-item’s id.
Trait Implementations
sourceimpl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ImplItemRef
impl<'tcx> ArenaAllocatable<'tcx, IsNotCopy> for ImplItemRef
fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut Self
fn allocate_from_iter<'a>(
arena: &'a Arena<'tcx>,
iter: impl IntoIterator<Item = Self>
) -> &'a mut [Self]ⓘNotable traits for &[u8]impl Read for &[u8]impl Write for &mut [u8]
sourceimpl Debug for ImplItemRef
impl Debug for ImplItemRef
sourceimpl<__CTX> HashStable<__CTX> for ImplItemRefwhere
__CTX: HashStableContext,
impl<__CTX> HashStable<__CTX> for ImplItemRefwhere
__CTX: HashStableContext,
fn hash_stable(&self, __hcx: &mut __CTX, __hasher: &mut StableHasher)
Auto Trait Implementations
impl RefUnwindSafe for ImplItemRef
impl !Send for ImplItemRef
impl !Sync for ImplItemRef
impl Unpin for ImplItemRef
impl UnwindSafe for ImplItemRef
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 36 bytes