use crate::healthcare::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum GenderWithUnknown {
#[serde(rename = "M")]
M,
#[serde(rename = "F")]
F,
#[serde(rename = "U")]
U,
#[serde(untagged)]
UnknownValue(String),
}
impl std::fmt::Display for GenderWithUnknown {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::M => write!(f, "M"),
Self::F => write!(f, "F"),
Self::U => write!(f, "U"),
Self::UnknownValue(s) => write!(f, "{s}"),
}
}
}
impl Default for GenderWithUnknown {
fn default() -> GenderWithUnknown {
Self::M
}
}