pub struct InherentImplSite {
pub type_name: Box<str>,
pub cfg_predicates: Box<[Box<str>]>,
pub first_impl: IrSpan,
pub method_count: usize,
}Expand description
One type’s inherent-impl footprint within a single file, under one set of
#[cfg] predicates.
A file contributes one site per (type, predicate set) pair, because only
impls sharing a predicate set are guaranteed to compile into the same build.
Fields§
§type_name: Box<str>Name of the implemented type, as written.
cfg_predicates: Box<[Box<str>]>Sorted, deduplicated #[cfg] predicates guarding these impls within the
file. Empty means they are in every build of the file.
first_impl: IrSpanLocation of the first inherent impl for the type under these gates.
method_count: usizeInherent methods contributed here, after forwarder exclusion.
Trait Implementations§
Source§impl Clone for InherentImplSite
impl Clone for InherentImplSite
Source§fn clone(&self) -> InherentImplSite
fn clone(&self) -> InherentImplSite
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for InherentImplSite
impl RefUnwindSafe for InherentImplSite
impl Send for InherentImplSite
impl Sync for InherentImplSite
impl Unpin for InherentImplSite
impl UnsafeUnpin for InherentImplSite
impl UnwindSafe for InherentImplSite
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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