pub struct CircuitCallGuard {
pub issued_at: u64,
/* private fields */
}Expand description
An RAII guard returned by NetworkCircuitBreaker::call.
Drop the guard without calling CircuitCallGuard::record and a
CircuitOutcome::Timeout is automatically recorded. This ensures that
abandoned in-flight requests are always accounted for.
Fields§
§issued_at: u64Timestamp at which the call was issued (µs).
Implementations§
Source§impl CircuitCallGuard
impl CircuitCallGuard
Sourcepub fn mark_recorded(&mut self)
pub fn mark_recorded(&mut self)
Mark the guard as having been explicitly recorded so that the Drop
implementation does not fire a spurious Timeout.
Sourcepub fn is_recorded(&self) -> bool
pub fn is_recorded(&self) -> bool
Returns true if an explicit outcome has already been recorded.
Trait Implementations§
Source§impl Debug for CircuitCallGuard
impl Debug for CircuitCallGuard
Source§impl Drop for CircuitCallGuard
impl Drop for CircuitCallGuard
Auto Trait Implementations§
impl Freeze for CircuitCallGuard
impl RefUnwindSafe for CircuitCallGuard
impl Send for CircuitCallGuard
impl Sync for CircuitCallGuard
impl Unpin for CircuitCallGuard
impl UnsafeUnpin for CircuitCallGuard
impl UnwindSafe for CircuitCallGuard
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> 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