Trait primitive_enum::PrimitiveFromEnum
source · pub trait PrimitiveFromEnum {
type PrimitiveEnum: TryFrom<u8> + UnsafeFromU8;
// Required methods
fn get_primitive_enum(&self) -> Self::PrimitiveEnum;
fn primitive_name() -> &'static str;
}
Expand description
Need for complex Enums, which includes other data:
use primitive_enum::{PrimitiveFromEnum, FromU8};
#[derive(PrimitiveFromEnum)]
#[primitive(Primitive)]
enum Complex {
A(String),
B(u32),
C
}
#[derive(FromU8, Clone, Copy)]
#[repr(u8)]
enum Primitive {
A,
B,
C,
}
PrimitiveEnum should be equivalent for Complex, but without variants inner data
Required Associated Types§
type PrimitiveEnum: TryFrom<u8> + UnsafeFromU8
Required Methods§
fn get_primitive_enum(&self) -> Self::PrimitiveEnum
sourcefn primitive_name() -> &'static str
fn primitive_name() -> &'static str
get primitive enum name in string format
Object Safety§
This trait is not object safe.