pub struct Transient {
pub kind: TransientKind,
pub context: Option<Cow<'static, str>>,
/* private fields */
}Expand description
A failure that may succeed if the same operation is retried.
Fields§
§kind: TransientKind§context: Option<Cow<'static, str>>A non-PII breadcrumb, e.g. "customers/<id> seq 42".
Implementations§
Source§impl Transient
impl Transient
pub fn new(kind: TransientKind) -> Transient
Sourcepub fn from_error(
kind: TransientKind,
e: impl Error + Send + Sync + 'static,
) -> Transient
pub fn from_error( kind: TransientKind, e: impl Error + Send + Sync + 'static, ) -> Transient
Transient::new plus Transient::with_source, as one call — the
common shape at a classification site that has the error in hand.
pub fn with_source(self, e: impl Error + Send + Sync + 'static) -> Transient
pub fn with_context(self, c: impl Into<Cow<'static, str>>) -> Transient
pub fn source_arc(&self) -> Option<&Arc<dyn Error + Send + Sync>>
pub fn is_congestion(&self) -> bool
pub fn is_contention(&self) -> bool
Trait Implementations§
Source§impl Error for Transient
impl Error for Transient
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 !RefUnwindSafe for Transient
impl !UnwindSafe for Transient
impl Freeze for Transient
impl Send for Transient
impl Sync for Transient
impl Unpin for Transient
impl UnsafeUnpin for Transient
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
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 more