pub trait Format : Clone {
fn from_str(s: &str) -> Result<Self, ()>;
}
#[derive(Clone, Debug, PartialEq)]
pub enum Enum {
IntegerDiscriminator,
StringDiscriminator,
}
impl Default for Enum {
fn default() -> Self {
Enum::StringDiscriminator
}
}
impl Format for Enum {
fn from_str(s: &str) -> Result<Self, ()> {
match s {
"integer" => Ok(Enum::IntegerDiscriminator),
"string" => Ok(Enum::StringDiscriminator),
_ => Err(()),
}
}
}