#[non_exhaustive]pub struct Variant<'a> {
pub enum_name: &'a str,
pub name: &'a str,
pub kind: VariantKind,
pub repr: VariantRepr<'a>,
}Expand description
Describes a variant of an enum.
See Describe::variant.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.enum_name: &'a strThe name of the enum.
name: &'a strThe name of the variant.
kind: VariantKindThe kind of variant.
repr: VariantRepr<'a>How the variant is represented.
Implementations§
Source§impl<'a> Variant<'a>
impl<'a> Variant<'a>
Sourcepub const fn new(
enum_name: &'a str,
name: &'a str,
kind: VariantKind,
repr: VariantRepr<'a>,
) -> Variant<'a>
pub const fn new( enum_name: &'a str, name: &'a str, kind: VariantKind, repr: VariantRepr<'a>, ) -> Variant<'a>
Creates a variant description.
Trait Implementations§
impl<'a> Copy for Variant<'a>
impl<'a> Eq for Variant<'a>
impl<'a> StructuralPartialEq for Variant<'a>
Auto Trait Implementations§
impl<'a> Freeze for Variant<'a>
impl<'a> RefUnwindSafe for Variant<'a>
impl<'a> Send for Variant<'a>
impl<'a> Sync for Variant<'a>
impl<'a> Unpin for Variant<'a>
impl<'a> UnsafeUnpin for Variant<'a>
impl<'a> UnwindSafe for Variant<'a>
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.