sdml_core::model::definitions

Trait HasVariants

source
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§

source

fn has_variants(&self) -> bool

source

fn variants_len(&self) -> usize

source

fn variants(&self) -> impl Iterator<Item = &Self::Variant>

source

fn variants_mut(&mut self) -> impl Iterator<Item = &mut Self::Variant>

source

fn add_to_variants(&mut self, value: Self::Variant)

source

fn extend_variants<I>(&mut self, extension: I)
where I: IntoIterator<Item = Self::Variant>,

Object Safety§

This trait is not object safe.

Implementors§