pub trait Flag: Sized + Clone + Copy + Hash + Eq {
    type FlagClass: FlagClass;

    // Required methods
    fn name(&self) -> Cow<'_, str>;
    fn role(&self, class: Option<Self::FlagClass>) -> FlagRole;
    fn id(&self) -> u32;
}

Required Associated Types§

Required Methods§

source

fn name(&self) -> Cow<'_, str>

source

fn role(&self, class: Option<Self::FlagClass>) -> FlagRole

source

fn id(&self) -> u32

Unique identifier for this Flag.

MUST be in the range [0, 0x7fff_ffff]

Object Safety§

This trait is not object safe.

Implementors§