pub struct Error { /* private fields */ }Expand description
Error type of random number generators
In order to be compatible with std and no_std, this type has two
possible implementations: with std a boxed Error trait object is stored,
while with no_std we merely store an error code.
Implementations§
Source§impl Error
impl Error
Sourcepub const CUSTOM_START: u32 = 3_221_225_472u32
pub const CUSTOM_START: u32 = 3_221_225_472u32
Codes at or above this point can be used by users to define their own custom errors.
This has a fixed value of (1 << 31) + (1 << 30) = 0xC000_0000,
therefore the number of values available for custom codes is 1 << 30.
This is identical to getrandom::Error::CUSTOM_START.
Sourcepub const INTERNAL_START: u32 = 2_147_483_648u32
pub const INTERNAL_START: u32 = 2_147_483_648u32
Codes below this point represent OS Errors (i.e. positive i32 values).
Codes at or above this point, but below Error::CUSTOM_START are
reserved for use by the rand and getrandom crates.
This is identical to getrandom::Error::INTERNAL_START.
Sourcepub fn new<E>(err: E) -> Error
pub fn new<E>(err: E) -> Error
Construct from any type supporting std::error::Error
Available only when configured with std.
See also From<NonZeroU32>, which is available with and without std.
Sourcepub fn inner(&self) -> &(dyn Error + Sync + Send + 'static)
pub fn inner(&self) -> &(dyn Error + Sync + Send + 'static)
Reference the inner error (std only)
When configured with std, this is a trivial operation and never
panics. Without std, this method is simply unavailable.
Sourcepub fn take_inner(self) -> Box<dyn Error + Sync + Send>
pub fn take_inner(self) -> Box<dyn Error + Sync + Send>
Unwrap the inner error (std only)
When configured with std, this is a trivial operation and never
panics. Without std, this method is simply unavailable.
Sourcepub fn raw_os_error(&self) -> Option<i32>
pub fn raw_os_error(&self) -> Option<i32>
Extract the raw OS error code (if this error came from the OS)
This method is identical to std::io::Error::raw_os_error(), except
that it works in no_std contexts. If this method returns None, the
error value can still be formatted via the Display implementation.
Trait Implementations§
Source§impl Error for Error
Available on crate feature std only.
impl Error for Error
std only.Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Source§#[doc(hidden)] fn type_id(&self, _: Internal) -> TypeIdwhere
Self: 'static,
#[doc(hidden)] fn type_id(&self, _: Internal) -> TypeIdwhere
Self: 'static,
error_type_id)TypeId of self.1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Auto Trait Implementations§
impl Freeze for Error
impl !RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl !UnwindSafe for Error
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
Source§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)] const SIZE: usize = _
#[doc(hidden)] const SIZE: usize = _
sized_type_properties)Source§#[doc(hidden)] const ALIGN: usize = _
#[doc(hidden)] const ALIGN: usize = _
sized_type_properties)Source§#[doc(hidden)] const IS_ZST: bool = _
#[doc(hidden)] const IS_ZST: bool = _
sized_type_properties)Source§#[doc(hidden)] const LAYOUT: Layout = _
#[doc(hidden)] const LAYOUT: Layout = _
sized_type_properties)Source§#[doc(hidden)] const MAX_SLICE_LEN: usize = _
#[doc(hidden)] const MAX_SLICE_LEN: usize = _
sized_type_properties)[Self]. Read more