pub struct AdtDefData {
pub did: DefId,
variants: IndexVec<VariantIdx, VariantDef>,
discrs: IndexVec<VariantIdx, u128>,
flags: AdtFlags,
}
Fields§
§did: DefId
§variants: IndexVec<VariantIdx, VariantDef>
§discrs: IndexVec<VariantIdx, u128>
§flags: AdtFlags
Implementations§
Source§impl AdtDefData
impl AdtDefData
pub(crate) fn new<'tcx>( tcx: TyCtxt<'tcx>, adt_def: AdtDef<'tcx>, variants: IndexVec<VariantIdx, VariantDef>, ) -> Self
Trait Implementations§
Source§impl Debug for AdtDefData
impl Debug for AdtDefData
Source§impl<__D: TyDecoder> Decodable<__D> for AdtDefData
impl<__D: TyDecoder> Decodable<__D> for AdtDefData
Source§impl<__E: TyEncoder> Encodable<__E> for AdtDefData
impl<__E: TyEncoder> Encodable<__E> for AdtDefData
Source§impl Hash for AdtDefData
impl Hash for AdtDefData
There should be only one AdtDef for each did
, therefore
it is fine to implement Hash
only based on did
.
Source§impl PartialEq for AdtDefData
impl PartialEq for AdtDefData
There should be only one AdtDef for each did
, therefore
it is fine to implement PartialEq
only based on did
.
impl Eq for AdtDefData
Auto Trait Implementations§
impl Freeze for AdtDefData
impl RefUnwindSafe for AdtDefData
impl Send for AdtDefData
impl Sync for AdtDefData
impl Unpin for AdtDefData
impl UnwindSafe for AdtDefData
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
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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