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};

/// DentalSpecialProgramCode : Code indicating the Special Program under which the services rendered to the patient were performed. Used for Medicaid claims only. Can be set to `01` - Early & Periodic Screening, Diagnosis and Treatment (EPSDT) or Child Assessment Program (CHAP), `02` - Physically Handicapped Children's Program, `03` - Special Federal Funding, or `05` - Disability. Codes `02`, `03`, and `05` are used for Medicaid claims only.
/// Code indicating the Special Program under which the services rendered to the patient were performed. Used for Medicaid claims only. Can be set to `01` - Early & Periodic Screening, Diagnosis and Treatment (EPSDT) or Child Assessment Program (CHAP), `02` - Physically Handicapped Children's Program, `03` - Special Federal Funding, or `05` - Disability. Codes `02`, `03`, and `05` are used for Medicaid claims only.
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum DentalSpecialProgramCode {
    #[serde(rename = "01")]
    Variant01,
    #[serde(rename = "02")]
    Variant02,
    #[serde(rename = "03")]
    Variant03,
    #[serde(rename = "05")]
    Variant05,
    /// Any value not defined in the spec (payers may return non-compliant values).
    #[serde(untagged)]
    UnknownValue(String),

}

impl std::fmt::Display for DentalSpecialProgramCode {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::Variant01 => write!(f, "01"),
            Self::Variant02 => write!(f, "02"),
            Self::Variant03 => write!(f, "03"),
            Self::Variant05 => write!(f, "05"),
            Self::UnknownValue(s) => write!(f, "{s}"),
        }
    }
}

impl Default for DentalSpecialProgramCode {
    fn default() -> DentalSpecialProgramCode {
        Self::Variant01
    }
}