pub enum CircuitResult<T> {
Success(T),
Failure(String),
Rejected(String),
RetryAllowed(String),
}Expand description
Result of a circuit breaker operation
Variants§
Success(T)
Operation succeeded
Failure(String)
Operation failed but circuit is still closed
Rejected(String)
Circuit is open, request was rejected
RetryAllowed(String)
Circuit is open but request was allowed in half-open state
Implementations§
Source§impl<T> CircuitResult<T>
impl<T> CircuitResult<T>
Sourcepub fn is_success(&self) -> bool
pub fn is_success(&self) -> bool
Check if the operation was successful
Sourcepub fn is_rejected(&self) -> bool
pub fn is_rejected(&self) -> bool
Check if the result is a rejection due to open circuit
Trait Implementations§
Source§impl<T: Clone> Clone for CircuitResult<T>
impl<T: Clone> Clone for CircuitResult<T>
Source§fn clone(&self) -> CircuitResult<T>
fn clone(&self) -> CircuitResult<T>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl<T> Freeze for CircuitResult<T>where
T: Freeze,
impl<T> RefUnwindSafe for CircuitResult<T>where
T: RefUnwindSafe,
impl<T> Send for CircuitResult<T>where
T: Send,
impl<T> Sync for CircuitResult<T>where
T: Sync,
impl<T> Unpin for CircuitResult<T>where
T: Unpin,
impl<T> UnwindSafe for CircuitResult<T>where
T: UnwindSafe,
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