#[non_exhaustive]
pub enum DeliverabilityTestStatus {
Completed,
InProgress,
Unknown(UnknownVariantValue),
}Expand description
When writing a match expression against DeliverabilityTestStatus, 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 deliverabilityteststatus = unimplemented!();
match deliverabilityteststatus {
DeliverabilityTestStatus::Completed => { /* ... */ },
DeliverabilityTestStatus::InProgress => { /* ... */ },
other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
_ => { /* ... */ },
}
The above code demonstrates that when deliverabilityteststatus represents
NewFeature, the execution path will lead to the second last match arm,
even though the enum does not contain a variant DeliverabilityTestStatus::NewFeature
in the current version of SDK. The reason is that the variable other,
created by the @ operator, is bound to
DeliverabilityTestStatus::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 DeliverabilityTestStatus::NewFeature is defined.
Specifically, when deliverabilityteststatus represents NewFeature,
the execution path will hit the second last match arm as before by virtue of
calling as_str on DeliverabilityTestStatus::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.
The status of a predictive inbox placement test. If the status is IN_PROGRESS, then the predictive inbox placement test is
currently running. Predictive inbox placement tests are usually complete within 24 hours of creating the test.
If the status is COMPLETE, then the test is finished, and you can use the
GetDeliverabilityTestReport operation to view the results of the
test.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Completed
InProgress
Unknown(UnknownVariantValue)
Unknown contains new variants that have been added since this code was generated.
Implementations§
Trait Implementations§
source§impl AsRef<str> for DeliverabilityTestStatus
impl AsRef<str> for DeliverabilityTestStatus
source§impl Clone for DeliverabilityTestStatus
impl Clone for DeliverabilityTestStatus
source§fn clone(&self) -> DeliverabilityTestStatus
fn clone(&self) -> DeliverabilityTestStatus
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for DeliverabilityTestStatus
impl Debug for DeliverabilityTestStatus
source§impl From<&str> for DeliverabilityTestStatus
impl From<&str> for DeliverabilityTestStatus
source§impl FromStr for DeliverabilityTestStatus
impl FromStr for DeliverabilityTestStatus
source§impl Hash for DeliverabilityTestStatus
impl Hash for DeliverabilityTestStatus
source§impl Ord for DeliverabilityTestStatus
impl Ord for DeliverabilityTestStatus
source§fn cmp(&self, other: &DeliverabilityTestStatus) -> Ordering
fn cmp(&self, other: &DeliverabilityTestStatus) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl PartialEq<DeliverabilityTestStatus> for DeliverabilityTestStatus
impl PartialEq<DeliverabilityTestStatus> for DeliverabilityTestStatus
source§fn eq(&self, other: &DeliverabilityTestStatus) -> bool
fn eq(&self, other: &DeliverabilityTestStatus) -> bool
self and other values to be equal, and is used
by ==.source§impl PartialOrd<DeliverabilityTestStatus> for DeliverabilityTestStatus
impl PartialOrd<DeliverabilityTestStatus> for DeliverabilityTestStatus
source§fn partial_cmp(&self, other: &DeliverabilityTestStatus) -> Option<Ordering>
fn partial_cmp(&self, other: &DeliverabilityTestStatus) -> 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 DeliverabilityTestStatus
impl StructuralEq for DeliverabilityTestStatus
impl StructuralPartialEq for DeliverabilityTestStatus
Auto Trait Implementations§
impl RefUnwindSafe for DeliverabilityTestStatus
impl Send for DeliverabilityTestStatus
impl Sync for DeliverabilityTestStatus
impl Unpin for DeliverabilityTestStatus
impl UnwindSafe for DeliverabilityTestStatus
Blanket Implementations§
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.