Kind

Enum Kind 

Source
pub enum Kind {
    User,
    System,
}
Expand description

The kind of error which occurred.

Distinguishes between errors which were the result of user actions and those which were the result of system failures. Conceptually similar to HTTP status codes in that 4xx errors are user-caused and 5xx errors are system-caused.

Variants§

§

User

An error which was the result of actions that the user took.

These errors are usually things which a user can easily resolve by changing how they interact with the system. Advice should be used to guide the user to the correct interaction paths and help them self-mitigate without needing to open support tickets.

These errors are usually generated with crate::user, [crate::user_with_cause] and [crate::user_with_internal].

§

System

An error which was the result of the system failing rather than the user’s actions.

These kinds of issues are usually the result of the system entering an unexpected state and/or violating an assumption on behalf of the developer. Often these issues cannot be resolved by the user directly, so the advice should guide them to the best way to raise a bug with you and provide you with information to help them fix the issue.

These errors are usually generated with crate::system, [crate::system_with_cause] and [crate::system_with_internal].

Trait Implementations§

Source§

impl Debug for Kind

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Kind

Source§

fn eq(&self, other: &Kind) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for Kind

Source§

impl StructuralPartialEq for Kind

Auto Trait Implementations§

§

impl Freeze for Kind

§

impl RefUnwindSafe for Kind

§

impl Send for Kind

§

impl Sync for Kind

§

impl Unpin for Kind

§

impl UnwindSafe for Kind

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.