aws_sdk_databasemigration/types/
_canned_acl_for_objects_value.rs1#[allow(missing_docs)] #[non_exhaustive]
47#[derive(
48 ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
49)]
50pub enum CannedAclForObjectsValue {
51 #[allow(missing_docs)] AuthenticatedRead,
53 #[allow(missing_docs)] AwsExecRead,
55 #[allow(missing_docs)] BucketOwnerFullControl,
57 #[allow(missing_docs)] BucketOwnerRead,
59 #[allow(missing_docs)] None,
61 #[allow(missing_docs)] Private,
63 #[allow(missing_docs)] PublicRead,
65 #[allow(missing_docs)] PublicReadWrite,
67 #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
69 Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
70}
71impl ::std::convert::From<&str> for CannedAclForObjectsValue {
72 fn from(s: &str) -> Self {
73 match s {
74 "authenticated-read" => CannedAclForObjectsValue::AuthenticatedRead,
75 "aws-exec-read" => CannedAclForObjectsValue::AwsExecRead,
76 "bucket-owner-full-control" => CannedAclForObjectsValue::BucketOwnerFullControl,
77 "bucket-owner-read" => CannedAclForObjectsValue::BucketOwnerRead,
78 "none" => CannedAclForObjectsValue::None,
79 "private" => CannedAclForObjectsValue::Private,
80 "public-read" => CannedAclForObjectsValue::PublicRead,
81 "public-read-write" => CannedAclForObjectsValue::PublicReadWrite,
82 other => CannedAclForObjectsValue::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
83 }
84 }
85}
86impl ::std::str::FromStr for CannedAclForObjectsValue {
87 type Err = ::std::convert::Infallible;
88
89 fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
90 ::std::result::Result::Ok(CannedAclForObjectsValue::from(s))
91 }
92}
93impl CannedAclForObjectsValue {
94 pub fn as_str(&self) -> &str {
96 match self {
97 CannedAclForObjectsValue::AuthenticatedRead => "authenticated-read",
98 CannedAclForObjectsValue::AwsExecRead => "aws-exec-read",
99 CannedAclForObjectsValue::BucketOwnerFullControl => "bucket-owner-full-control",
100 CannedAclForObjectsValue::BucketOwnerRead => "bucket-owner-read",
101 CannedAclForObjectsValue::None => "none",
102 CannedAclForObjectsValue::Private => "private",
103 CannedAclForObjectsValue::PublicRead => "public-read",
104 CannedAclForObjectsValue::PublicReadWrite => "public-read-write",
105 CannedAclForObjectsValue::Unknown(value) => value.as_str(),
106 }
107 }
108 pub const fn values() -> &'static [&'static str] {
110 &[
111 "authenticated-read",
112 "aws-exec-read",
113 "bucket-owner-full-control",
114 "bucket-owner-read",
115 "none",
116 "private",
117 "public-read",
118 "public-read-write",
119 ]
120 }
121}
122impl ::std::convert::AsRef<str> for CannedAclForObjectsValue {
123 fn as_ref(&self) -> &str {
124 self.as_str()
125 }
126}
127impl CannedAclForObjectsValue {
128 pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
132 match Self::from(value) {
133 #[allow(deprecated)]
134 Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
135 known => Ok(known),
136 }
137 }
138}
139impl ::std::fmt::Display for CannedAclForObjectsValue {
140 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
141 match self {
142 CannedAclForObjectsValue::AuthenticatedRead => write!(f, "authenticated-read"),
143 CannedAclForObjectsValue::AwsExecRead => write!(f, "aws-exec-read"),
144 CannedAclForObjectsValue::BucketOwnerFullControl => write!(f, "bucket-owner-full-control"),
145 CannedAclForObjectsValue::BucketOwnerRead => write!(f, "bucket-owner-read"),
146 CannedAclForObjectsValue::None => write!(f, "none"),
147 CannedAclForObjectsValue::Private => write!(f, "private"),
148 CannedAclForObjectsValue::PublicRead => write!(f, "public-read"),
149 CannedAclForObjectsValue::PublicReadWrite => write!(f, "public-read-write"),
150 CannedAclForObjectsValue::Unknown(value) => write!(f, "{value}"),
151 }
152 }
153}