use std::str::FromStr;
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
#[allow(clippy::upper_case_acronyms)]
pub enum VSIDS {
Chaff = 0,
MiniSAT,
}
impl std::fmt::Display for VSIDS {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::Chaff => write!(f, "Chaff"),
Self::MiniSAT => write!(f, "MiniSAT"),
}
}
}
impl VSIDS {
pub const MIN: VSIDS = VSIDS::Chaff;
pub const MAX: VSIDS = VSIDS::MiniSAT;
}
impl FromStr for VSIDS {
type Err = ();
fn from_str(s: &str) -> Result<Self, Self::Err> {
match s {
"Chaff" => Ok(Self::Chaff),
"MiniSAT" => Ok(Self::MiniSAT),
_ => Err(()),
}
}
}