Enum rscontainer::Poisoning [−][src]
pub enum Poisoning<S> { Healthy(S), Poisoned(S), }
Expand description
Indicates whether an instance is poisoned or not.
More information about poisoning in the Nomicon.
How to use this:
- For pointer types that don’t support poisoning, use
assert_healthy
. - When it’s a hard bug if the value is poisoned, use
assert_healthy
. - When poisoning status doesn’t matter, use
unpoison
. - When you need different logic for poisoned or not, use a match statement.
Variants
The instance is not poisoned, program flow can continue as usual.
The instance is poisoned, extra care should be taken when handling the value.
Implementations
Returns the instance if it is not poisoned, panics if it is poisoned.
Returns the instance if it is poisoned, panics if it is not poisoned.
Always returns the instance, whether it’s poisoned or not.
For pointer types that don’t support poisoning, prefer
assert_healthy
, as this won’t introduce hidden bugs when the
pointer type is changed at a later time.
Only use this if you’re certain that it doesn’t matter if the value is poisoned.
Returns true
if the instance is Healthy
.
Returns true
if the instance is Poisoned
.
Returns Some(&S)
if the value is not poisoned, returns None
if it
is poisoned.
Returns Some(&S)
if the value is poisoned, returns None
if it is
not poisoned.
Returns Some(&mut S)
if the value is not poisoned, returns None
if
it is poisoned.
Returns Some(&mut S)
if the value is poisoned, returns None
if it
is not poisoned.
Converts the value into Some(S)
if it is not poisoned. Converterts
the value into None
if it is poisoned.
Converts the value into Some(S)
if it is poisoned. Converterts the
value into None
if it is not poisoned.
Trait Implementations
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Auto Trait Implementations
impl<S> RefUnwindSafe for Poisoning<S> where
S: RefUnwindSafe,
impl<S> UnwindSafe for Poisoning<S> where
S: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more