#[non_exhaustive]pub enum TaskError {
Timeout {
timeout: Duration,
},
Fatal {
error: String,
},
Fail {
error: String,
},
Canceled,
}Expand description
§Errors produced by task execution.
These represent failures of individual async tasks managed by the runtime.
Some errors are retryable (Timeout, Fail), others are considered fatal.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Timeout
Task execution exceeded its timeout duration.
Fatal
Non-recoverable fatal error (should not be retried).
Fail
Task execution failed but may succeed if retried.
Canceled
Task was cancelled due to shutdown or parent cancellation.
Returned when task detects CancellationToken::is_cancelled() and exits gracefully.
This is not an error in traditional sense, but signals intentional termination.
Implementations§
Source§impl TaskError
impl TaskError
Sourcepub fn as_label(&self) -> &'static str
pub fn as_label(&self) -> &'static str
Returns a short stable label (snake_case) for use in logs/metrics.
Sourcepub fn as_message(&self) -> String
pub fn as_message(&self) -> String
Returns a human-readable message with details about the error.
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Indicates whether the error type is safe to retry.
Trait Implementations§
Source§impl Error for TaskError
impl Error for TaskError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for TaskError
impl RefUnwindSafe for TaskError
impl Send for TaskError
impl Sync for TaskError
impl Unpin for TaskError
impl UnwindSafe for TaskError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more