Struct rustc_middle::ty::AdtFlags
source · [−]pub struct AdtFlags {
bits: u32,
}Fields
bits: u32Implementations
sourceimpl AdtFlags
impl AdtFlags
pub const NO_ADT_FLAGS: AdtFlags
sourcepub const IS_PHANTOM_DATA: AdtFlags
pub const IS_PHANTOM_DATA: AdtFlags
Indicates whether the type is PhantomData.
sourcepub const IS_FUNDAMENTAL: AdtFlags
pub const IS_FUNDAMENTAL: AdtFlags
Indicates whether the type has a #[fundamental] attribute.
sourcepub const IS_MANUALLY_DROP: AdtFlags
pub const IS_MANUALLY_DROP: AdtFlags
Indicates whether the type is ManuallyDrop.
sourcepub const IS_VARIANT_LIST_NON_EXHAUSTIVE: AdtFlags
pub const IS_VARIANT_LIST_NON_EXHAUSTIVE: AdtFlags
Indicates whether the variant list of this ADT is #[non_exhaustive].
(i.e., this flag is never set unless this ADT is an enum).
sourcepub fn from_bits(bits: u32) -> Option<AdtFlags>
pub fn from_bits(bits: u32) -> Option<AdtFlags>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
sourcepub const fn from_bits_truncate(bits: u32) -> AdtFlags
pub const fn from_bits_truncate(bits: u32) -> AdtFlags
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
sourcepub const unsafe fn from_bits_unchecked(bits: u32) -> AdtFlags
pub const unsafe fn from_bits_unchecked(bits: u32) -> AdtFlags
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
sourcepub const fn intersects(&self, other: AdtFlags) -> bool
pub const fn intersects(&self, other: AdtFlags) -> bool
Returns true if there are flags common to both self and other.
Trait Implementations
sourceimpl BitAndAssign<AdtFlags> for AdtFlags
impl BitAndAssign<AdtFlags> for AdtFlags
sourcefn bitand_assign(&mut self, other: AdtFlags)
fn bitand_assign(&mut self, other: AdtFlags)
Disables all flags disabled in the set.
sourceimpl BitOrAssign<AdtFlags> for AdtFlags
impl BitOrAssign<AdtFlags> for AdtFlags
sourcefn bitor_assign(&mut self, other: AdtFlags)
fn bitor_assign(&mut self, other: AdtFlags)
Adds the set of flags.
sourceimpl BitXorAssign<AdtFlags> for AdtFlags
impl BitXorAssign<AdtFlags> for AdtFlags
sourcefn bitxor_assign(&mut self, other: AdtFlags)
fn bitxor_assign(&mut self, other: AdtFlags)
Toggles the set of flags.
sourceimpl Extend<AdtFlags> for AdtFlags
impl Extend<AdtFlags> for AdtFlags
sourcefn extend<T: IntoIterator<Item = AdtFlags>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = AdtFlags>>(&mut self, iterator: T)
Extends a collection with the contents of an iterator. Read more
sourcefn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)Extends a collection with exactly one element.
sourcefn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)Reserves capacity in a collection for the given number of additional elements. Read more
sourceimpl FromIterator<AdtFlags> for AdtFlags
impl FromIterator<AdtFlags> for AdtFlags
sourceimpl<'__ctx> HashStable<StableHashingContext<'__ctx>> for AdtFlags
impl<'__ctx> HashStable<StableHashingContext<'__ctx>> for AdtFlags
fn hash_stable(
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)
sourceimpl Ord for AdtFlags
impl Ord for AdtFlags
sourceimpl PartialOrd<AdtFlags> for AdtFlags
impl PartialOrd<AdtFlags> for AdtFlags
sourcefn partial_cmp(&self, other: &AdtFlags) -> Option<Ordering>
fn partial_cmp(&self, other: &AdtFlags) -> Option<Ordering>
This method returns an ordering between self and other values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self and other) and is used by the <=
operator. Read more
sourceimpl SubAssign<AdtFlags> for AdtFlags
impl SubAssign<AdtFlags> for AdtFlags
sourcefn sub_assign(&mut self, other: AdtFlags)
fn sub_assign(&mut self, other: AdtFlags)
Disables all flags enabled in the set.
impl Copy for AdtFlags
impl Eq for AdtFlags
impl StructuralEq for AdtFlags
impl StructuralPartialEq for AdtFlags
Auto Trait Implementations
impl RefUnwindSafe for AdtFlags
impl Send for AdtFlags
impl Sync for AdtFlags
impl Unpin for AdtFlags
impl UnwindSafe for AdtFlags
Blanket Implementations
sourceimpl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for T where
T: Copy,
impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for T where
T: Copy,
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<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Ctxt, T> DepNodeParams<Ctxt> for T where
Ctxt: DepContext,
T: for<'a> HashStable<StableHashingContext<'a>> + Debug,
impl<Ctxt, T> DepNodeParams<Ctxt> for T where
Ctxt: DepContext,
T: for<'a> HashStable<StableHashingContext<'a>> + Debug,
pub default fn fingerprint_style() -> FingerprintStyle
sourcepub default fn to_fingerprint(&self, tcx: Ctxt) -> Fingerprint
pub default fn to_fingerprint(&self, tcx: Ctxt) -> Fingerprint
This method turns the parameters of a DepNodeConstructor into an opaque Fingerprint to be used in DepNode. Not all DepNodeParams support being turned into a Fingerprint (they don’t need to if the corresponding DepNode is anonymous). Read more
pub default fn to_debug_str(&self, Ctxt) -> String
sourcepub default fn recover(
Ctxt,
&DepNode<<Ctxt as DepContext>::DepKind>
) -> Option<T>
pub default fn recover(
Ctxt,
&DepNode<<Ctxt as DepContext>::DepKind>
) -> Option<T>
This method tries to recover the query key from the given DepNode,
something which is needed when forcing DepNodes during red-green
evaluation. The query system will only call this method if
fingerprint_style() is not FingerprintStyle::Opaque.
It is always valid to return None here, in which case incremental
compilation will treat the query as having changed instead of forcing it. Read more
sourceimpl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<'a, T> Captures<'a> for T where
T: ?Sized,
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: 4 bytes