Struct NoSource

Source
pub struct NoSource;
Expand description

An ErrorSource that can be used to represent to lack of any error source. Both its Source and Detail types are (). This can be used for primitive errors that are not caused by any error source.

In practice, it is also possible to omit specifying any error source inside define_error!, which has similar effect as using NoSource but with the source field omitted entirely.

Trait Implementations§

Source§

impl<Trace> ErrorSource<Trace> for NoSource

Source§

type Detail = ()

The type of the error detail that can be extracted from the error source
Source§

type Source = ()

The type of the error source.
Source§

fn error_details(_: Self::Source) -> (Self::Detail, Option<Trace>)

Extracts the error details out from the error source, together with an optional error trace.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.