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
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
.
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
.
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
.
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.
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.
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 Diplay
implementation.
Retrieve the error code, if any.
If this Error
was constructed via From<NonZeroU32>
, then this method
will return this NonZeroU32
code (for no_std
this is always the
case). Otherwise, this method will return None
.
Trait Implementations
Performs the conversion.