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) -> Errorwhere
E: Into<Box<dyn Error + Sync + Send>>,
pub fn new<E>(err: E) -> Errorwhere E: Into<Box<dyn Error + Sync + Send>>,
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.
sourcepub fn code(&self) -> Option<NonZeroU32>
pub fn code(&self) -> Option<NonZeroU32>
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§
source§impl Error for Error
impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<NonZeroU32> for Error
impl From<NonZeroU32> for Error
source§fn from(code: NonZeroU32) -> Error
fn from(code: NonZeroU32) -> Error
Auto Trait Implementations§
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.source§impl<T> FieldValue for Twhere
T: 'static,
impl<T> FieldValue for Twhere T: 'static,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> ScriptMessagePayload for Twhere
T: 'static + Send,
impl<T> ScriptMessagePayload for Twhere T: 'static + Send,
source§fn as_any_ref(&self) -> &(dyn Any + 'static)
fn as_any_ref(&self) -> &(dyn Any + 'static)
self as &dyn Anysource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
self as &dyn Any§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.