Trait unchecked_unwrap::UncheckedUnwrap [−][src]
pub trait UncheckedUnwrap<T> { unsafe fn unchecked_unwrap(self) -> T; }
Trait for unchecked_unwrap
.
Required methods
unsafe fn unchecked_unwrap(self) -> T
[src]
Unwraps an Option
or Result
, yielding the content of a Some
or Ok
. This is the unchecked alternative to Option::unwrap
and Result::unwrap
.
Panics
Only panics if cfg(debug_assertions)
and feature="debug_checks"
is enabled.
Panics if the value is a None
or Err
, if Result
with a panic
massage provided by the Err
’s value.
Safety
Callers of this function are responsible that Option
or Result
carries a Some
or Ok
.
Failing that, the returned value may reference invalid memory or cause undefined behaviour.
Examples
use unchecked_unwrap::UncheckedUnwrap; let x = Some("air"); assert_eq!(unsafe { x.unchecked_unwrap() }, "air"); let x: Result<u32, &str> = Ok(2); assert_eq!(unsafe { x.unchecked_unwrap() }, 2);
Implementations on Foreign Types
impl<T> UncheckedUnwrap<T> for Option<T>
[src]
impl<T> UncheckedUnwrap<T> for Option<T>
[src]unsafe fn unchecked_unwrap(self) -> T
[src]
impl<T, E: Debug> UncheckedUnwrap<T> for Result<T, E>
[src]
impl<T, E: Debug> UncheckedUnwrap<T> for Result<T, E>
[src]