autogen-stedi 0.3.2

Auto-generated, strongly-typed Rust client for the Stedi APIs
Documentation
/*
 * Stedi Healthcare
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 2024-04-01
 * Contact: healthcare@stedi.com
 * Generated by: https://openapi-generator.tech
 */

use crate::healthcare::models;
use serde::{Deserialize, Serialize};

/// ServiceEntityIdentifierCode : Entity identifier code for service lines in claim status reports
/// Entity identifier code for service lines in claim status reports
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ServiceEntityIdentifierCode {
    #[serde(rename = "03")]
    Variant03,
    #[serde(rename = "36")]
    Variant36,
    #[serde(rename = "40")]
    Variant40,
    #[serde(rename = "41")]
    Variant41,
    #[serde(rename = "71")]
    Variant71,
    #[serde(rename = "72")]
    Variant72,
    #[serde(rename = "73")]
    Variant73,
    #[serde(rename = "77")]
    Variant77,
    #[serde(rename = "82")]
    Variant82,
    #[serde(rename = "85")]
    Variant85,
    #[serde(rename = "87")]
    Variant87,
    #[serde(rename = "1P")]
    Variant1P,
    #[serde(rename = "1Z")]
    Variant1Z,
    #[serde(rename = "DK")]
    Dk,
    #[serde(rename = "DN")]
    Dn,
    #[serde(rename = "DQ")]
    Dq,
    #[serde(rename = "FA")]
    Fa,
    #[serde(rename = "GB")]
    Gb,
    #[serde(rename = "HK")]
    Hk,
    #[serde(rename = "IL")]
    Il,
    #[serde(rename = "LI")]
    Li,
    #[serde(rename = "MSC")]
    Msc,
    #[serde(rename = "PR")]
    Pr,
    #[serde(rename = "PRP")]
    Prp,
    #[serde(rename = "QB")]
    Qb,
    #[serde(rename = "QC")]
    Qc,
    #[serde(rename = "QD")]
    Qd,
    #[serde(rename = "SEP")]
    Sep,
    #[serde(rename = "TL")]
    Tl,
    #[serde(rename = "TTP")]
    Ttp,
    #[serde(rename = "TU")]
    Tu,
    /// Any value not defined in the spec (payers may return non-compliant values).
    #[serde(untagged)]
    UnknownValue(String),

}

impl std::fmt::Display for ServiceEntityIdentifierCode {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::Variant03 => write!(f, "03"),
            Self::Variant36 => write!(f, "36"),
            Self::Variant40 => write!(f, "40"),
            Self::Variant41 => write!(f, "41"),
            Self::Variant71 => write!(f, "71"),
            Self::Variant72 => write!(f, "72"),
            Self::Variant73 => write!(f, "73"),
            Self::Variant77 => write!(f, "77"),
            Self::Variant82 => write!(f, "82"),
            Self::Variant85 => write!(f, "85"),
            Self::Variant87 => write!(f, "87"),
            Self::Variant1P => write!(f, "1P"),
            Self::Variant1Z => write!(f, "1Z"),
            Self::Dk => write!(f, "DK"),
            Self::Dn => write!(f, "DN"),
            Self::Dq => write!(f, "DQ"),
            Self::Fa => write!(f, "FA"),
            Self::Gb => write!(f, "GB"),
            Self::Hk => write!(f, "HK"),
            Self::Il => write!(f, "IL"),
            Self::Li => write!(f, "LI"),
            Self::Msc => write!(f, "MSC"),
            Self::Pr => write!(f, "PR"),
            Self::Prp => write!(f, "PRP"),
            Self::Qb => write!(f, "QB"),
            Self::Qc => write!(f, "QC"),
            Self::Qd => write!(f, "QD"),
            Self::Sep => write!(f, "SEP"),
            Self::Tl => write!(f, "TL"),
            Self::Ttp => write!(f, "TTP"),
            Self::Tu => write!(f, "TU"),
            Self::UnknownValue(s) => write!(f, "{s}"),
        }
    }
}

impl Default for ServiceEntityIdentifierCode {
    fn default() -> ServiceEntityIdentifierCode {
        Self::Variant03
    }
}