Struct Error
pub struct Error(/* private field */);
Errors encountered by the timer implementation.
Currently, there are two different errors that can occur:
-
shutdownoccurs when a timer operation is attempted, but the timer instance has been dropped. In this case, the operation will never be able to complete and theshutdownerror is returned. This is a permanent error, i.e., once this error is observed, timer operations will never succeed in the future. -
at_capacityoccurs when a timer operation is attempted, but the timer instance is currently handling its maximum number of outstanding sleep instances. In this case, the operation is not able to be performed at the current moment, andat_capacityis returned. This is a transient error, i.e., at some point in the future, if the operation is attempted again, it might succeed. Callers that observe this error should attempt to shed load. One way to do this would be dropping the future that issued the timer operation.
Implementations
impl Error
fn shutdown() -> ErrorCreates an error representing a shutdown timer.
fn is_shutdown(&self) -> boolReturns
trueif the error was caused by the timer being shutdown.fn at_capacity() -> ErrorCreates an error representing a timer at capacity.
fn is_at_capacity(&self) -> boolReturns
trueif the error was caused by the timer being at capacity.fn invalid() -> ErrorCreates an error representing a misconfigured timer.
fn is_invalid(&self) -> boolReturns
trueif the error was caused by the timer being misconfigured.
Trait Implementations
impl Clone for Error
fn clone(&self) -> Self
impl Copy for Error
impl Debug for Error
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Display for Error
fn fmt(&self, fmt: &mut Formatter<'_>) -> Result
impl Error for Error
Auto Trait Implementations
impl Freeze for Error
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnsafeUnpin for Error
impl UnwindSafe for Error
Blanket Implementations
impl<T> Any for Error
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for Error
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for Error
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for Error
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for Error
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for Error
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T> ToString for Error
where
T: Display + ?Sized,
fn to_string(&self) -> String
impl<T, U> Into<U> for Error
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for Error
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for Error
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>