#[doc(alias = "TERMINOLOGY_STATUS")]
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
pub enum TerminologyStatus {
Trial,
Active,
Retired,
Other(String),
}
impl TerminologyStatus {
#[must_use]
pub fn as_str(&self) -> &str {
match self {
Self::Trial => "trial",
Self::Active => "active",
Self::Retired => "retired",
Self::Other(__s) => __s.as_str(),
}
}
#[must_use]
pub fn from_wire(__s: &str) -> Self {
match __s {
"trial" => Self::Trial,
"active" => Self::Active,
"retired" => Self::Retired,
_ => Self::Other(__s.to_owned()),
}
}
}
impl ::core::convert::TryFrom<&str> for TerminologyStatus {
type Error = UnknownTerminologyStatus;
fn try_from(__s: &str) -> ::core::result::Result<Self, Self::Error> {
match __s {
"trial" => ::core::result::Result::Ok(Self::Trial),
"active" => ::core::result::Result::Ok(Self::Active),
"retired" => ::core::result::Result::Ok(Self::Retired),
_ => ::core::result::Result::Err(UnknownTerminologyStatus(__s.to_owned())),
}
}
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct UnknownTerminologyStatus(pub String);
impl ::core::fmt::Display for UnknownTerminologyStatus {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
::core::write!(f, "unknown TERMINOLOGY_STATUS value: {:?}", self.0)
}
}
impl ::std::error::Error for UnknownTerminologyStatus {}