Enum const_type_layout::Discriminant
source · pub enum Discriminant {
I8(i8),
I16(i16),
I32(i32),
I64(i64),
I128(i128),
Isize(isize),
U8(u8),
U16(u16),
U32(u32),
U64(u64),
U128(u128),
Usize(usize),
}
Available on crate feature
derive
only.Expand description
Discriminant value of a type.
Variants§
I8(i8)
#[repr(i8)]
discriminant.
I16(i16)
#[repr(i16)]
discriminant.
I32(i32)
#[repr(i32)]
discriminant.
I64(i64)
#[repr(i64)]
discriminant.
I128(i128)
#[repr(i128)]
discriminant.
Isize(isize)
#[repr(isize)]
discriminant (default).
U8(u8)
#[repr(u8)]
discriminant.
U16(u16)
#[repr(u16)]
discriminant.
U32(u32)
#[repr(u32)]
discriminant.
U64(u64)
#[repr(u64)]
discriminant.
U128(u128)
#[repr(u128)]
discriminant.
Usize(usize)
#[repr(usize)]
discriminant.
Implementations§
source§impl Discriminant
impl Discriminant
sourcepub const fn new<T: ExtractDiscriminant>(v: T::Discriminant) -> Self
pub const fn new<T: ExtractDiscriminant>(v: T::Discriminant) -> Self
Constructs a Discriminant
value with the given value v
of the type
T
’s core::marker::DiscriminantKind::Discriminant
.
Trait Implementations§
source§impl Clone for Discriminant
impl Clone for Discriminant
source§fn clone(&self) -> Discriminant
fn clone(&self) -> Discriminant
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for Discriminant
impl Debug for Discriminant
source§impl<'de> Deserialize<'de> for Discriminant
impl<'de> Deserialize<'de> for Discriminant
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Hash for Discriminant
impl Hash for Discriminant
source§impl Ord for Discriminant
impl Ord for Discriminant
source§fn cmp(&self, other: &Discriminant) -> Ordering
fn cmp(&self, other: &Discriminant) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for Discriminant
impl PartialEq for Discriminant
source§fn eq(&self, other: &Discriminant) -> bool
fn eq(&self, other: &Discriminant) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for Discriminant
impl PartialOrd for Discriminant
source§fn partial_cmp(&self, other: &Discriminant) -> Option<Ordering>
fn partial_cmp(&self, other: &Discriminant) -> Option<Ordering>
1.0.0 · source§fn 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 moresource§impl Serialize for Discriminant
impl Serialize for Discriminant
impl Copy for Discriminant
impl Eq for Discriminant
impl StructuralEq for Discriminant
impl StructuralPartialEq for Discriminant
Auto Trait Implementations§
impl RefUnwindSafe for Discriminant
impl Send for Discriminant
impl Sync for Discriminant
impl Unpin for Discriminant
impl UnwindSafe for Discriminant
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> ExtractDiscriminant for T
impl<T> ExtractDiscriminant for T
§type Discriminant = <T as ExtractDiscriminantSpec<<T as DiscriminantKind>::Discriminant>>::Ty
type Discriminant = <T as ExtractDiscriminantSpec<<T as DiscriminantKind>::Discriminant>>::Ty
The type of the discriminant, which must satisfy the trait bounds
required by
core::mem::Discriminant
. Read more