aws_sdk_acmpca/types/
_signing_algorithm.rs1#[allow(missing_docs)] #[non_exhaustive]
49#[derive(
50 ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
51)]
52pub enum SigningAlgorithm {
53 #[allow(missing_docs)] MlDsa44,
55 #[allow(missing_docs)] MlDsa65,
57 #[allow(missing_docs)] MlDsa87,
59 #[allow(missing_docs)] Sha256Withecdsa,
61 #[allow(missing_docs)] Sha256Withrsa,
63 #[allow(missing_docs)] Sha384Withecdsa,
65 #[allow(missing_docs)] Sha384Withrsa,
67 #[allow(missing_docs)] Sha512Withecdsa,
69 #[allow(missing_docs)] Sha512Withrsa,
71 #[allow(missing_docs)] Sm3Withsm2,
73 #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
75 Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
76}
77impl ::std::convert::From<&str> for SigningAlgorithm {
78 fn from(s: &str) -> Self {
79 match s {
80 "ML_DSA_44" => SigningAlgorithm::MlDsa44,
81 "ML_DSA_65" => SigningAlgorithm::MlDsa65,
82 "ML_DSA_87" => SigningAlgorithm::MlDsa87,
83 "SHA256WITHECDSA" => SigningAlgorithm::Sha256Withecdsa,
84 "SHA256WITHRSA" => SigningAlgorithm::Sha256Withrsa,
85 "SHA384WITHECDSA" => SigningAlgorithm::Sha384Withecdsa,
86 "SHA384WITHRSA" => SigningAlgorithm::Sha384Withrsa,
87 "SHA512WITHECDSA" => SigningAlgorithm::Sha512Withecdsa,
88 "SHA512WITHRSA" => SigningAlgorithm::Sha512Withrsa,
89 "SM3WITHSM2" => SigningAlgorithm::Sm3Withsm2,
90 other => SigningAlgorithm::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
91 }
92 }
93}
94impl ::std::str::FromStr for SigningAlgorithm {
95 type Err = ::std::convert::Infallible;
96
97 fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
98 ::std::result::Result::Ok(SigningAlgorithm::from(s))
99 }
100}
101impl SigningAlgorithm {
102 pub fn as_str(&self) -> &str {
104 match self {
105 SigningAlgorithm::MlDsa44 => "ML_DSA_44",
106 SigningAlgorithm::MlDsa65 => "ML_DSA_65",
107 SigningAlgorithm::MlDsa87 => "ML_DSA_87",
108 SigningAlgorithm::Sha256Withecdsa => "SHA256WITHECDSA",
109 SigningAlgorithm::Sha256Withrsa => "SHA256WITHRSA",
110 SigningAlgorithm::Sha384Withecdsa => "SHA384WITHECDSA",
111 SigningAlgorithm::Sha384Withrsa => "SHA384WITHRSA",
112 SigningAlgorithm::Sha512Withecdsa => "SHA512WITHECDSA",
113 SigningAlgorithm::Sha512Withrsa => "SHA512WITHRSA",
114 SigningAlgorithm::Sm3Withsm2 => "SM3WITHSM2",
115 SigningAlgorithm::Unknown(value) => value.as_str(),
116 }
117 }
118 pub const fn values() -> &'static [&'static str] {
120 &[
121 "ML_DSA_44",
122 "ML_DSA_65",
123 "ML_DSA_87",
124 "SHA256WITHECDSA",
125 "SHA256WITHRSA",
126 "SHA384WITHECDSA",
127 "SHA384WITHRSA",
128 "SHA512WITHECDSA",
129 "SHA512WITHRSA",
130 "SM3WITHSM2",
131 ]
132 }
133}
134impl ::std::convert::AsRef<str> for SigningAlgorithm {
135 fn as_ref(&self) -> &str {
136 self.as_str()
137 }
138}
139impl SigningAlgorithm {
140 pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
144 match Self::from(value) {
145 #[allow(deprecated)]
146 Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
147 known => Ok(known),
148 }
149 }
150}
151impl ::std::fmt::Display for SigningAlgorithm {
152 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
153 match self {
154 SigningAlgorithm::MlDsa44 => write!(f, "ML_DSA_44"),
155 SigningAlgorithm::MlDsa65 => write!(f, "ML_DSA_65"),
156 SigningAlgorithm::MlDsa87 => write!(f, "ML_DSA_87"),
157 SigningAlgorithm::Sha256Withecdsa => write!(f, "SHA256WITHECDSA"),
158 SigningAlgorithm::Sha256Withrsa => write!(f, "SHA256WITHRSA"),
159 SigningAlgorithm::Sha384Withecdsa => write!(f, "SHA384WITHECDSA"),
160 SigningAlgorithm::Sha384Withrsa => write!(f, "SHA384WITHRSA"),
161 SigningAlgorithm::Sha512Withecdsa => write!(f, "SHA512WITHECDSA"),
162 SigningAlgorithm::Sha512Withrsa => write!(f, "SHA512WITHRSA"),
163 SigningAlgorithm::Sm3Withsm2 => write!(f, "SM3WITHSM2"),
164 SigningAlgorithm::Unknown(value) => write!(f, "{value}"),
165 }
166 }
167}