pub struct RunFailure {
pub run_id: RunId,
pub status: RunStatus,
}Expand description
A run that stopped short of an answer, as an error a caller can ?.
Carries the RunStatus whole rather than a flattened string, so a caller
that started with RunOutcome::success and later needs to tell a
suspension from a quarantine can match on status without
re-plumbing the call site.
Fields§
§run_id: RunId§status: RunStatusTrait Implementations§
Source§impl Clone for RunFailure
impl Clone for RunFailure
Source§impl Debug for RunFailure
impl Debug for RunFailure
Source§impl Display for RunFailure
Total, including over the status this type is not supposed to hold.
impl Display for RunFailure
Total, including over the status this type is not supposed to hold.
status is public and RunStatus carries Succeeded, so a
RunFailure { status: Succeeded } is a value any caller can build. Asserting
that away would make formatting an error the operation that panics, and a
Display impl runs wherever an error is logged — disproportionately during
an incident. So it prints the contradiction instead.
Source§impl Error for RunFailure
impl Error for RunFailure
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 RunFailure
impl RefUnwindSafe for RunFailure
impl Send for RunFailure
impl Sync for RunFailure
impl Unpin for RunFailure
impl UnsafeUnpin for RunFailure
impl UnwindSafe for RunFailure
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.