use crate::healthcare::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum TimePeriodQualifierCode {
#[serde(rename = "6")]
Variant6,
#[serde(rename = "7")]
Variant7,
#[serde(rename = "21")]
Variant21,
#[serde(rename = "22")]
Variant22,
#[serde(rename = "23")]
Variant23,
#[serde(rename = "24")]
Variant24,
#[serde(rename = "25")]
Variant25,
#[serde(rename = "26")]
Variant26,
#[serde(rename = "27")]
Variant27,
#[serde(rename = "28")]
Variant28,
#[serde(rename = "29")]
Variant29,
#[serde(rename = "30")]
Variant30,
#[serde(rename = "31")]
Variant31,
#[serde(rename = "32")]
Variant32,
#[serde(rename = "33")]
Variant33,
#[serde(rename = "34")]
Variant34,
#[serde(rename = "35")]
Variant35,
#[serde(untagged)]
UnknownValue(String),
}
impl std::fmt::Display for TimePeriodQualifierCode {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Variant6 => write!(f, "6"),
Self::Variant7 => write!(f, "7"),
Self::Variant21 => write!(f, "21"),
Self::Variant22 => write!(f, "22"),
Self::Variant23 => write!(f, "23"),
Self::Variant24 => write!(f, "24"),
Self::Variant25 => write!(f, "25"),
Self::Variant26 => write!(f, "26"),
Self::Variant27 => write!(f, "27"),
Self::Variant28 => write!(f, "28"),
Self::Variant29 => write!(f, "29"),
Self::Variant30 => write!(f, "30"),
Self::Variant31 => write!(f, "31"),
Self::Variant32 => write!(f, "32"),
Self::Variant33 => write!(f, "33"),
Self::Variant34 => write!(f, "34"),
Self::Variant35 => write!(f, "35"),
Self::UnknownValue(s) => write!(f, "{s}"),
}
}
}
impl Default for TimePeriodQualifierCode {
fn default() -> TimePeriodQualifierCode {
Self::Variant6
}
}