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

/// ReleaseOfInformationCode : Code indicating whether the provider has on file a signed statement by the patient authorizing the release of medical data to other organizations. Can be set to `I` - Informed Consent to Release Medical Information or `Y` - Yes. Code `I` is required when the provider has not collected a signature AND state or federal laws do not require a signature be collected. Code `Y` is required when the provider has collected a signature OR when state or federal laws require a signature be collected.
/// Code indicating whether the provider has on file a signed statement by the patient authorizing the release of medical data to other organizations. Can be set to `I` - Informed Consent to Release Medical Information or `Y` - Yes. Code `I` is required when the provider has not collected a signature AND state or federal laws do not require a signature be collected. Code `Y` is required when the provider has collected a signature OR when state or federal laws require a signature be collected.
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ReleaseOfInformationCode {
    #[serde(rename = "I")]
    I,
    #[serde(rename = "Y")]
    Y,
    /// Any value not defined in the spec (payers may return non-compliant values).
    #[serde(untagged)]
    UnknownValue(String),

}

impl std::fmt::Display for ReleaseOfInformationCode {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::I => write!(f, "I"),
            Self::Y => write!(f, "Y"),
            Self::UnknownValue(s) => write!(f, "{s}"),
        }
    }
}

impl Default for ReleaseOfInformationCode {
    fn default() -> ReleaseOfInformationCode {
        Self::I
    }
}