[][src]Struct rand_core::Error

pub struct Error {
    pub kind: ErrorKind,
    pub msg: &'static str,
    // some fields omitted
}

Error type of random number generators

This is a relatively simple error type, designed for compatibility with and without the Rust std library. It embeds a "kind" code, a message (static string only), and an optional chained cause (std only). The kind and msg fields can be accessed directly; cause can be accessed via std::error::Error::cause or Error::take_cause. Construction can only be done via Error::new or Error::with_cause.

Fields

kind: ErrorKind

The error kind

msg: &'static str

The error message

Implementations

impl Error[src]

pub fn new(kind: ErrorKind, msg: &'static str) -> Error[src]

Create a new instance, with specified kind and a message.

pub fn with_cause<E>(kind: ErrorKind, msg: &'static str, cause: E) -> Error where
    E: Into<Box<dyn Error + 'static + Send + Sync>>, 
[src]

Create a new instance, with specified kind, message, and a chained cause.

Note: stdError is an alias for std::error::Error.

If not targetting std (i.e. no_std), this function is replaced by another with the same prototype, except that there are no bounds on the type E (because both Box and stdError are unavailable), and the cause is ignored.

pub fn take_cause(&mut self) -> Option<Box<dyn Error + 'static + Send + Sync>>[src]

Take the cause, if any. This allows the embedded cause to be extracted. This uses Option::take, leaving self with no cause.

Trait Implementations

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

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

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.