pub trait HasVariants {
type Variant;
// Required methods
fn has_variants(&self) -> bool;
fn variants_len(&self) -> usize;
fn variants(&self) -> impl Iterator<Item = &Self::Variant>;
fn variants_mut(&mut self) -> impl Iterator<Item = &mut Self::Variant>;
fn add_to_variants(&mut self, value: Self::Variant);
fn extend_variants<I>(&mut self, extension: I)
where I: IntoIterator<Item = Self::Variant>;
}
Required Associated Types§
Required Methods§
fn has_variants(&self) -> bool
fn variants_len(&self) -> usize
fn variants(&self) -> impl Iterator<Item = &Self::Variant>
fn variants_mut(&mut self) -> impl Iterator<Item = &mut Self::Variant>
fn add_to_variants(&mut self, value: Self::Variant)
fn extend_variants<I>(&mut self, extension: I)where
I: IntoIterator<Item = Self::Variant>,
Object Safety§
This trait is not object safe.