Enum aws_sdk_wafv2::types::CountryCode
source · #[non_exhaustive]pub enum CountryCode {
Show 251 variants
Ad,
Ae,
Af,
Ag,
Ai,
Al,
Am,
Ao,
Aq,
Ar,
As,
At,
Au,
Aw,
Ax,
Az,
Ba,
Bb,
Bd,
Be,
Bf,
Bg,
Bh,
Bi,
Bj,
Bl,
Bm,
Bn,
Bo,
Bq,
Br,
Bs,
Bt,
Bv,
Bw,
By,
Bz,
Ca,
Cc,
Cd,
Cf,
Cg,
Ch,
Ci,
Ck,
Cl,
Cm,
Cn,
Co,
Cr,
Cu,
Cv,
Cw,
Cx,
Cy,
Cz,
De,
Dj,
Dk,
Dm,
Do,
Dz,
Ec,
Ee,
Eg,
Eh,
Er,
Es,
Et,
Fi,
Fj,
Fk,
Fm,
Fo,
Fr,
Ga,
Gb,
Gd,
Ge,
Gf,
Gg,
Gh,
Gi,
Gl,
Gm,
Gn,
Gp,
Gq,
Gr,
Gs,
Gt,
Gu,
Gw,
Gy,
Hk,
Hm,
Hn,
Hr,
Ht,
Hu,
Id,
Ie,
Il,
Im,
In,
Io,
Iq,
Ir,
Is,
It,
Je,
Jm,
Jo,
Jp,
Ke,
Kg,
Kh,
Ki,
Km,
Kn,
Kp,
Kr,
Kw,
Ky,
Kz,
La,
Lb,
Lc,
Li,
Lk,
Lr,
Ls,
Lt,
Lu,
Lv,
Ly,
Ma,
Mc,
Md,
Me,
Mf,
Mg,
Mh,
Mk,
Ml,
Mm,
Mn,
Mo,
Mp,
Mq,
Mr,
Ms,
Mt,
Mu,
Mv,
Mw,
Mx,
My,
Mz,
Na,
Nc,
Ne,
Nf,
Ng,
Ni,
Nl,
No,
Np,
Nr,
Nu,
Nz,
Om,
Pa,
Pe,
Pf,
Pg,
Ph,
Pk,
Pl,
Pm,
Pn,
Pr,
Ps,
Pt,
Pw,
Py,
Qa,
Re,
Ro,
Rs,
Ru,
Rw,
Sa,
Sb,
Sc,
Sd,
Se,
Sg,
Sh,
Si,
Sj,
Sk,
Sl,
Sm,
Sn,
So,
Sr,
Ss,
St,
Sv,
Sx,
Sy,
Sz,
Tc,
Td,
Tf,
Tg,
Th,
Tj,
Tk,
Tl,
Tm,
Tn,
To,
Tr,
Tt,
Tv,
Tw,
Tz,
Ua,
Ug,
Um,
Us,
Uy,
Uz,
Va,
Vc,
Ve,
Vg,
Vi,
Vn,
Vu,
Wf,
Ws,
Xk,
Ye,
Yt,
Za,
Zm,
Zw,
Unknown(UnknownVariantValue),
}Expand description
When writing a match expression against CountryCode, it is important to ensure
your code is forward-compatible. That is, if a match arm handles a case for a
feature that is supported by the service but has not been represented as an enum
variant in a current version of SDK, your code should continue to work when you
upgrade SDK to a future version in which the enum does include a variant for that
feature.
Here is an example of how you can make a match expression forward-compatible:
# let countrycode = unimplemented!();
match countrycode {
CountryCode::Ad => { /* ... */ },
CountryCode::Ae => { /* ... */ },
CountryCode::Af => { /* ... */ },
CountryCode::Ag => { /* ... */ },
CountryCode::Ai => { /* ... */ },
CountryCode::Al => { /* ... */ },
CountryCode::Am => { /* ... */ },
CountryCode::Ao => { /* ... */ },
CountryCode::Aq => { /* ... */ },
CountryCode::Ar => { /* ... */ },
CountryCode::As => { /* ... */ },
CountryCode::At => { /* ... */ },
CountryCode::Au => { /* ... */ },
CountryCode::Aw => { /* ... */ },
CountryCode::Ax => { /* ... */ },
CountryCode::Az => { /* ... */ },
CountryCode::Ba => { /* ... */ },
CountryCode::Bb => { /* ... */ },
CountryCode::Bd => { /* ... */ },
CountryCode::Be => { /* ... */ },
CountryCode::Bf => { /* ... */ },
CountryCode::Bg => { /* ... */ },
CountryCode::Bh => { /* ... */ },
CountryCode::Bi => { /* ... */ },
CountryCode::Bj => { /* ... */ },
CountryCode::Bl => { /* ... */ },
CountryCode::Bm => { /* ... */ },
CountryCode::Bn => { /* ... */ },
CountryCode::Bo => { /* ... */ },
CountryCode::Bq => { /* ... */ },
CountryCode::Br => { /* ... */ },
CountryCode::Bs => { /* ... */ },
CountryCode::Bt => { /* ... */ },
CountryCode::Bv => { /* ... */ },
CountryCode::Bw => { /* ... */ },
CountryCode::By => { /* ... */ },
CountryCode::Bz => { /* ... */ },
CountryCode::Ca => { /* ... */ },
CountryCode::Cc => { /* ... */ },
CountryCode::Cd => { /* ... */ },
CountryCode::Cf => { /* ... */ },
CountryCode::Cg => { /* ... */ },
CountryCode::Ch => { /* ... */ },
CountryCode::Ci => { /* ... */ },
CountryCode::Ck => { /* ... */ },
CountryCode::Cl => { /* ... */ },
CountryCode::Cm => { /* ... */ },
CountryCode::Cn => { /* ... */ },
CountryCode::Co => { /* ... */ },
CountryCode::Cr => { /* ... */ },
CountryCode::Cu => { /* ... */ },
CountryCode::Cv => { /* ... */ },
CountryCode::Cw => { /* ... */ },
CountryCode::Cx => { /* ... */ },
CountryCode::Cy => { /* ... */ },
CountryCode::Cz => { /* ... */ },
CountryCode::De => { /* ... */ },
CountryCode::Dj => { /* ... */ },
CountryCode::Dk => { /* ... */ },
CountryCode::Dm => { /* ... */ },
CountryCode::Do => { /* ... */ },
CountryCode::Dz => { /* ... */ },
CountryCode::Ec => { /* ... */ },
CountryCode::Ee => { /* ... */ },
CountryCode::Eg => { /* ... */ },
CountryCode::Eh => { /* ... */ },
CountryCode::Er => { /* ... */ },
CountryCode::Es => { /* ... */ },
CountryCode::Et => { /* ... */ },
CountryCode::Fi => { /* ... */ },
CountryCode::Fj => { /* ... */ },
CountryCode::Fk => { /* ... */ },
CountryCode::Fm => { /* ... */ },
CountryCode::Fo => { /* ... */ },
CountryCode::Fr => { /* ... */ },
CountryCode::Ga => { /* ... */ },
CountryCode::Gb => { /* ... */ },
CountryCode::Gd => { /* ... */ },
CountryCode::Ge => { /* ... */ },
CountryCode::Gf => { /* ... */ },
CountryCode::Gg => { /* ... */ },
CountryCode::Gh => { /* ... */ },
CountryCode::Gi => { /* ... */ },
CountryCode::Gl => { /* ... */ },
CountryCode::Gm => { /* ... */ },
CountryCode::Gn => { /* ... */ },
CountryCode::Gp => { /* ... */ },
CountryCode::Gq => { /* ... */ },
CountryCode::Gr => { /* ... */ },
CountryCode::Gs => { /* ... */ },
CountryCode::Gt => { /* ... */ },
CountryCode::Gu => { /* ... */ },
CountryCode::Gw => { /* ... */ },
CountryCode::Gy => { /* ... */ },
CountryCode::Hk => { /* ... */ },
CountryCode::Hm => { /* ... */ },
CountryCode::Hn => { /* ... */ },
CountryCode::Hr => { /* ... */ },
CountryCode::Ht => { /* ... */ },
CountryCode::Hu => { /* ... */ },
CountryCode::Id => { /* ... */ },
CountryCode::Ie => { /* ... */ },
CountryCode::Il => { /* ... */ },
CountryCode::Im => { /* ... */ },
CountryCode::In => { /* ... */ },
CountryCode::Io => { /* ... */ },
CountryCode::Iq => { /* ... */ },
CountryCode::Ir => { /* ... */ },
CountryCode::Is => { /* ... */ },
CountryCode::It => { /* ... */ },
CountryCode::Je => { /* ... */ },
CountryCode::Jm => { /* ... */ },
CountryCode::Jo => { /* ... */ },
CountryCode::Jp => { /* ... */ },
CountryCode::Ke => { /* ... */ },
CountryCode::Kg => { /* ... */ },
CountryCode::Kh => { /* ... */ },
CountryCode::Ki => { /* ... */ },
CountryCode::Km => { /* ... */ },
CountryCode::Kn => { /* ... */ },
CountryCode::Kp => { /* ... */ },
CountryCode::Kr => { /* ... */ },
CountryCode::Kw => { /* ... */ },
CountryCode::Ky => { /* ... */ },
CountryCode::Kz => { /* ... */ },
CountryCode::La => { /* ... */ },
CountryCode::Lb => { /* ... */ },
CountryCode::Lc => { /* ... */ },
CountryCode::Li => { /* ... */ },
CountryCode::Lk => { /* ... */ },
CountryCode::Lr => { /* ... */ },
CountryCode::Ls => { /* ... */ },
CountryCode::Lt => { /* ... */ },
CountryCode::Lu => { /* ... */ },
CountryCode::Lv => { /* ... */ },
CountryCode::Ly => { /* ... */ },
CountryCode::Ma => { /* ... */ },
CountryCode::Mc => { /* ... */ },
CountryCode::Md => { /* ... */ },
CountryCode::Me => { /* ... */ },
CountryCode::Mf => { /* ... */ },
CountryCode::Mg => { /* ... */ },
CountryCode::Mh => { /* ... */ },
CountryCode::Mk => { /* ... */ },
CountryCode::Ml => { /* ... */ },
CountryCode::Mm => { /* ... */ },
CountryCode::Mn => { /* ... */ },
CountryCode::Mo => { /* ... */ },
CountryCode::Mp => { /* ... */ },
CountryCode::Mq => { /* ... */ },
CountryCode::Mr => { /* ... */ },
CountryCode::Ms => { /* ... */ },
CountryCode::Mt => { /* ... */ },
CountryCode::Mu => { /* ... */ },
CountryCode::Mv => { /* ... */ },
CountryCode::Mw => { /* ... */ },
CountryCode::Mx => { /* ... */ },
CountryCode::My => { /* ... */ },
CountryCode::Mz => { /* ... */ },
CountryCode::Na => { /* ... */ },
CountryCode::Nc => { /* ... */ },
CountryCode::Ne => { /* ... */ },
CountryCode::Nf => { /* ... */ },
CountryCode::Ng => { /* ... */ },
CountryCode::Ni => { /* ... */ },
CountryCode::Nl => { /* ... */ },
CountryCode::No => { /* ... */ },
CountryCode::Np => { /* ... */ },
CountryCode::Nr => { /* ... */ },
CountryCode::Nu => { /* ... */ },
CountryCode::Nz => { /* ... */ },
CountryCode::Om => { /* ... */ },
CountryCode::Pa => { /* ... */ },
CountryCode::Pe => { /* ... */ },
CountryCode::Pf => { /* ... */ },
CountryCode::Pg => { /* ... */ },
CountryCode::Ph => { /* ... */ },
CountryCode::Pk => { /* ... */ },
CountryCode::Pl => { /* ... */ },
CountryCode::Pm => { /* ... */ },
CountryCode::Pn => { /* ... */ },
CountryCode::Pr => { /* ... */ },
CountryCode::Ps => { /* ... */ },
CountryCode::Pt => { /* ... */ },
CountryCode::Pw => { /* ... */ },
CountryCode::Py => { /* ... */ },
CountryCode::Qa => { /* ... */ },
CountryCode::Re => { /* ... */ },
CountryCode::Ro => { /* ... */ },
CountryCode::Rs => { /* ... */ },
CountryCode::Ru => { /* ... */ },
CountryCode::Rw => { /* ... */ },
CountryCode::Sa => { /* ... */ },
CountryCode::Sb => { /* ... */ },
CountryCode::Sc => { /* ... */ },
CountryCode::Sd => { /* ... */ },
CountryCode::Se => { /* ... */ },
CountryCode::Sg => { /* ... */ },
CountryCode::Sh => { /* ... */ },
CountryCode::Si => { /* ... */ },
CountryCode::Sj => { /* ... */ },
CountryCode::Sk => { /* ... */ },
CountryCode::Sl => { /* ... */ },
CountryCode::Sm => { /* ... */ },
CountryCode::Sn => { /* ... */ },
CountryCode::So => { /* ... */ },
CountryCode::Sr => { /* ... */ },
CountryCode::Ss => { /* ... */ },
CountryCode::St => { /* ... */ },
CountryCode::Sv => { /* ... */ },
CountryCode::Sx => { /* ... */ },
CountryCode::Sy => { /* ... */ },
CountryCode::Sz => { /* ... */ },
CountryCode::Tc => { /* ... */ },
CountryCode::Td => { /* ... */ },
CountryCode::Tf => { /* ... */ },
CountryCode::Tg => { /* ... */ },
CountryCode::Th => { /* ... */ },
CountryCode::Tj => { /* ... */ },
CountryCode::Tk => { /* ... */ },
CountryCode::Tl => { /* ... */ },
CountryCode::Tm => { /* ... */ },
CountryCode::Tn => { /* ... */ },
CountryCode::To => { /* ... */ },
CountryCode::Tr => { /* ... */ },
CountryCode::Tt => { /* ... */ },
CountryCode::Tv => { /* ... */ },
CountryCode::Tw => { /* ... */ },
CountryCode::Tz => { /* ... */ },
CountryCode::Ua => { /* ... */ },
CountryCode::Ug => { /* ... */ },
CountryCode::Um => { /* ... */ },
CountryCode::Us => { /* ... */ },
CountryCode::Uy => { /* ... */ },
CountryCode::Uz => { /* ... */ },
CountryCode::Va => { /* ... */ },
CountryCode::Vc => { /* ... */ },
CountryCode::Ve => { /* ... */ },
CountryCode::Vg => { /* ... */ },
CountryCode::Vi => { /* ... */ },
CountryCode::Vn => { /* ... */ },
CountryCode::Vu => { /* ... */ },
CountryCode::Wf => { /* ... */ },
CountryCode::Ws => { /* ... */ },
CountryCode::Xk => { /* ... */ },
CountryCode::Ye => { /* ... */ },
CountryCode::Yt => { /* ... */ },
CountryCode::Za => { /* ... */ },
CountryCode::Zm => { /* ... */ },
CountryCode::Zw => { /* ... */ },
other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
_ => { /* ... */ },
}
The above code demonstrates that when countrycode represents
NewFeature, the execution path will lead to the second last match arm,
even though the enum does not contain a variant CountryCode::NewFeature
in the current version of SDK. The reason is that the variable other,
created by the @ operator, is bound to
CountryCode::Unknown(UnknownVariantValue("NewFeature".to_owned()))
and calling as_str on it yields "NewFeature".
This match expression is forward-compatible when executed with a newer
version of SDK where the variant CountryCode::NewFeature is defined.
Specifically, when countrycode represents NewFeature,
the execution path will hit the second last match arm as before by virtue of
calling as_str on CountryCode::NewFeature also yielding "NewFeature".
Explicitly matching on the Unknown variant should
be avoided for two reasons:
- The inner data
UnknownVariantValueis opaque, and no further information can be extracted. - It might inadvertently shadow other intended match arms.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Ad
Ae
Af
Ag
Ai
Al
Am
Ao
Aq
Ar
As
At
Au
Aw
Ax
Az
Ba
Bb
Bd
Be
Bf
Bg
Bh
Bi
Bj
Bl
Bm
Bn
Bo
Bq
Br
Bs
Bt
Bv
Bw
By
Bz
Ca
Cc
Cd
Cf
Cg
Ch
Ci
Ck
Cl
Cm
Cn
Co
Cr
Cu
Cv
Cw
Cx
Cy
Cz
De
Dj
Dk
Dm
Do
Dz
Ec
Ee
Eg
Eh
Er
Es
Et
Fi
Fj
Fk
Fm
Fo
Fr
Ga
Gb
Gd
Ge
Gf
Gg
Gh
Gi
Gl
Gm
Gn
Gp
Gq
Gr
Gs
Gt
Gu
Gw
Gy
Hk
Hm
Hn
Hr
Ht
Hu
Id
Ie
Il
Im
In
Io
Iq
Ir
Is
It
Je
Jm
Jo
Jp
Ke
Kg
Kh
Ki
Km
Kn
Kp
Kr
Kw
Ky
Kz
La
Lb
Lc
Li
Lk
Lr
Ls
Lt
Lu
Lv
Ly
Ma
Mc
Md
Me
Mf
Mg
Mh
Mk
Ml
Mm
Mn
Mo
Mp
Mq
Mr
Ms
Mt
Mu
Mv
Mw
Mx
My
Mz
Na
Nc
Ne
Nf
Ng
Ni
Nl
No
Np
Nr
Nu
Nz
Om
Pa
Pe
Pf
Pg
Ph
Pk
Pl
Pm
Pn
Pr
Ps
Pt
Pw
Py
Qa
Re
Ro
Rs
Ru
Rw
Sa
Sb
Sc
Sd
Se
Sg
Sh
Si
Sj
Sk
Sl
Sm
Sn
So
Sr
Ss
St
Sv
Sx
Sy
Sz
Tc
Td
Tf
Tg
Th
Tj
Tk
Tl
Tm
Tn
To
Tr
Tt
Tv
Tw
Tz
Ua
Ug
Um
Us
Uy
Uz
Va
Vc
Ve
Vg
Vi
Vn
Vu
Wf
Ws
Xk
Ye
Yt
Za
Zm
Zw
Unknown(UnknownVariantValue)
Unknown. See the docs on this enum for the correct way to handle unknown variants.Unknown contains new variants that have been added since this code was generated.
Implementations§
source§impl CountryCode
impl CountryCode
source§impl CountryCode
impl CountryCode
sourcepub fn try_parse(value: &str) -> Result<Self, UnknownVariantError>
pub fn try_parse(value: &str) -> Result<Self, UnknownVariantError>
Parses the enum value while disallowing unknown variants.
Unknown variants will result in an error.
Trait Implementations§
source§impl AsRef<str> for CountryCode
impl AsRef<str> for CountryCode
source§impl Clone for CountryCode
impl Clone for CountryCode
source§fn clone(&self) -> CountryCode
fn clone(&self) -> CountryCode
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for CountryCode
impl Debug for CountryCode
source§impl From<&str> for CountryCode
impl From<&str> for CountryCode
source§impl FromStr for CountryCode
impl FromStr for CountryCode
source§impl Hash for CountryCode
impl Hash for CountryCode
source§impl Ord for CountryCode
impl Ord for CountryCode
source§fn cmp(&self, other: &CountryCode) -> Ordering
fn cmp(&self, other: &CountryCode) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for CountryCode
impl PartialEq for CountryCode
source§fn eq(&self, other: &CountryCode) -> bool
fn eq(&self, other: &CountryCode) -> bool
self and other values to be equal, and is used
by ==.source§impl PartialOrd for CountryCode
impl PartialOrd for CountryCode
source§fn partial_cmp(&self, other: &CountryCode) -> Option<Ordering>
fn partial_cmp(&self, other: &CountryCode) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read moreimpl Eq for CountryCode
impl StructuralPartialEq for CountryCode
Auto Trait Implementations§
impl RefUnwindSafe for CountryCode
impl Send for CountryCode
impl Sync for CountryCode
impl Unpin for CountryCode
impl UnwindSafe for CountryCode
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.