#[non_exhaustive]pub enum CircuitState {
Closed,
Open,
HalfOpen,
}Expand description
Represents the current state of a circuit breaker.
Marked #[non_exhaustive] so future minor releases can add new
states (e.g. Disabled, ForcedOpen) without breaking callers
that exhaustively match on the enum.
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.
Closed
Circuit is closed and operations are allowed to execute
Open
Circuit is open and operations will fail fast
HalfOpen
Circuit is partially open, allowing a test request
Trait Implementations§
Source§impl Clone for CircuitState
impl Clone for CircuitState
Source§fn clone(&self) -> CircuitState
fn clone(&self) -> CircuitState
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CircuitState
impl Debug for CircuitState
Source§impl PartialEq for CircuitState
impl PartialEq for CircuitState
Source§fn eq(&self, other: &CircuitState) -> bool
fn eq(&self, other: &CircuitState) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for CircuitState
impl StructuralPartialEq for CircuitState
Auto Trait Implementations§
impl Freeze for CircuitState
impl RefUnwindSafe for CircuitState
impl Send for CircuitState
impl Sync for CircuitState
impl Unpin for CircuitState
impl UnsafeUnpin for CircuitState
impl UnwindSafe for CircuitState
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