use melodium_common::descriptor::Variability as VariabilityDescriptor;
use std::fmt;
#[derive(Copy, Clone, PartialEq, Eq, Debug)]
pub enum Variability {
Const,
Var,
}
impl Variability {
pub fn from_string(text: &str) -> Option<Self> {
match text {
"const" => Some(Self::Const),
"var" => Some(Self::Var),
_ => None,
}
}
pub fn to_descriptor(&self) -> VariabilityDescriptor {
match self {
Self::Const => VariabilityDescriptor::Const,
Self::Var => VariabilityDescriptor::Var,
}
}
}
impl fmt::Display for Variability {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(
f,
"{}",
match self {
Variability::Const => "const",
Variability::Var => "var",
}
)
}
}