OrStopped

Enum OrStopped 

Source
pub enum OrStopped<E = Error> {
    Internal(E),
    Stopped,
}
Expand description

Represents an error in a stoppable task: either an internal / fatal error, or a task getting stopped after receiving a stop request.

The Error trait is intentionally not implemented for this enum to force users to treat the Stopped variant with care. Depending on the application, it may not be an error. Use the try_stoppable! macro to handle this variant by early-returning Ok(()).

Variants§

§

Internal(E)

Internal error.

§

Stopped

Graceful stop after receiving the corresponding request.

Implementations§

Source§

impl<E> OrStopped<E>

Source

pub fn internal(err: impl Into<E>) -> Self

Maps an error to the Internal variant.

Trait Implementations§

Source§

impl<E: Debug> Debug for OrStopped<E>

Source§

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

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

impl Display for OrStopped

Source§

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

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

impl<E> From<E> for OrStopped<E>

Source§

fn from(err: E) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<E> Freeze for OrStopped<E>
where E: Freeze,

§

impl<E> RefUnwindSafe for OrStopped<E>
where E: RefUnwindSafe,

§

impl<E> Send for OrStopped<E>
where E: Send,

§

impl<E> Sync for OrStopped<E>
where E: Sync,

§

impl<E> Unpin for OrStopped<E>
where E: Unpin,

§

impl<E> UnwindSafe for OrStopped<E>
where E: UnwindSafe,

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<!> for T

Source§

fn from(t: !) -> T

Converts to this type from the input type.
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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> ErasedDestructor for T
where T: 'static,