/*
 * API Documentation
 *
 * Source of truth and network automation platform
 *
 * The version of the OpenAPI document: 3.1.0 (3.1)
 *
 * Generated by: https://openapi-generator.tech
 */

///
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum HashingAlgorithmEnum {
    #[serde(rename = "md5")]
    Md5,
    #[serde(rename = "sha1")]
    Sha1,
    #[serde(rename = "sha224")]
    Sha224,
    #[serde(rename = "sha384")]
    Sha384,
    #[serde(rename = "sha256")]
    Sha256,
    #[serde(rename = "sha512")]
    Sha512,
    #[serde(rename = "sha3")]
    Sha3,
    #[serde(rename = "blake2")]
    Blake2,
    #[serde(rename = "blake3")]
    Blake3,
}

impl ToString for HashingAlgorithmEnum {
    fn to_string(&self) -> String {
        match self {
            Self::Md5 => String::from("md5"),
            Self::Sha1 => String::from("sha1"),
            Self::Sha224 => String::from("sha224"),
            Self::Sha384 => String::from("sha384"),
            Self::Sha256 => String::from("sha256"),
            Self::Sha512 => String::from("sha512"),
            Self::Sha3 => String::from("sha3"),
            Self::Blake2 => String::from("blake2"),
            Self::Blake3 => String::from("blake3"),
        }
    }
}

impl Default for HashingAlgorithmEnum {
    fn default() -> HashingAlgorithmEnum {
        Self::Md5
    }
}
