# [−] [src] Struct getrandom::Error

    pub struct Error(_);

A small and `no_std` compatible error type.

The [`Error::raw_os_error()`] will indicate if the error is from the OS, and if so, which error code the OS gave the application. If such an error is encountered, please consult with your system documentation.

Internally this type is a NonZeroU32, with certain values reserved for certain purposes, see [`Error::INTERNAL_START`] and [`Error::CUSTOM_START`].

## Methods

### `impl Error` [src]

#### `pub const UNKNOWN: Error` [src]

Deprecated since 0.1.7

#### `pub const UNAVAILABLE: Error` [src]

Deprecated since 0.1.7

#### `pub const INTERNAL_START: u32` [src]

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.

#### `pub const CUSTOM_START: u32` [src]

Codes at or above this point can be used by users to define their own custom errors.

#### `pub fn raw_os_error(&self) -> Option<i32>` [src]

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.

#### `pub fn code(&self) -> NonZeroU32` [src]

Extract the bare error code.

This code can either come from the underlying OS, or be a custom error. Use [`Error::raw_os_error()`] to disambiguate.

## Trait Implementations

### `impl PartialEq<Error> for Error` [src]

#### `fn eq(&self, other: &Error) -> bool` [src]

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more

#### `fn ne(&self, other: &Error) -> bool` [src]

This method tests for `!=`.

### `impl Eq for Error` [src]

### `impl From<NonZeroU32> for Error` [src]

#### `fn from(code: NonZeroU32) -> Self` [src]

Performs the conversion.

### `impl From<Error> for Error` [src]

#### `fn from(err: Error) -> Self` [src]

Performs the conversion.

### `impl From<Error> for Error` [src]

#### `fn from(err: Error) -> Self` [src]

Performs the conversion.

### `impl Display for Error` [src]

#### `fn fmt(&self, f: &mut Formatter) -> Result` [src]

Formats the value using the given formatter. Read more

### `impl Debug for Error` [src]

#### `fn fmt(&self, f: &mut Formatter) -> Result` [src]

Formats the value using the given formatter. Read more

### `impl Copy for Error` [src]

### `impl Clone for Error` [src]

#### `fn clone(&self) -> Error` [src]

Returns a copy of the value. Read more

#### `fn clone_from(&mut self, source: &Self)`1.0.0 [src]

Performs copy-assignment from `source`. Read more

### `impl Error for Error` [src]

#### `fn description(&self) -> &str` 1.0.0 [src]

This method is soft-deprecated. Read more

#### `fn cause(&self) -> Option<&dyn Error>`1.0.0 [src]

Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

The lower-level cause of this error, if any. Read more

#### `fn source(&self) -> Option<&(dyn Error + 'static)>`1.30.0 [src]

The lower-level source of this error, if any. Read more

## Auto Trait Implementations

### `impl Send for Error`

### `impl Sync for Error`

## Blanket Implementations

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

#### `fn from(t: T) -> T` [src]

Performs the conversion.

### `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.

#### `fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>` [src]

Performs the conversion.

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

#### `fn into(self) -> U` [src]

Performs the conversion.

### `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.

#### `fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>` [src]

Performs the conversion.

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

#### `fn borrow(&self) -> &T` [src]

Immutably borrows from an owned value. Read more

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

#### `fn borrow_mut(&mut self) -> &mut T` [src]

Mutably borrows from an owned value. Read more

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

#### `fn type_id(&self) -> TypeId` [src]

Gets the `TypeId` of `self`. Read more

### `impl<T> ToOwned for T where
T: Clone,` [src]

#### `type Owned = T`

The resulting type after obtaining ownership.

#### `fn to_owned(&self) -> T` [src]

Creates owned data from borrowed data, usually by cloning. Read more

#### `fn clone_into(&self, target: &mut T)` [src]

🔬 This is a nightly-only experimental API. (`toowned_clone_into`)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

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

#### `default fn to_string(&self) -> String` [src]

Converts the given value to a `String`. Read more

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)