pub struct ExponentialBackoffBuilder<C> { /* private fields */ }Expand description
Builder for ExponentialBackoff.
TODO: Example
Implementations§
source§impl<C> ExponentialBackoffBuilder<C>
impl<C> ExponentialBackoffBuilder<C>
pub fn new() -> ExponentialBackoffBuilder<C>
sourcepub fn with_initial_interval(
&mut self,
initial_interval: Duration
) -> &mut ExponentialBackoffBuilder<C>
pub fn with_initial_interval( &mut self, initial_interval: Duration ) -> &mut ExponentialBackoffBuilder<C>
The initial retry interval.
sourcepub fn with_randomization_factor(
&mut self,
randomization_factor: f64
) -> &mut ExponentialBackoffBuilder<C>
pub fn with_randomization_factor( &mut self, randomization_factor: f64 ) -> &mut ExponentialBackoffBuilder<C>
The randomization factor to use for creating a range around the retry interval.
A randomization factor of 0.5 results in a random period ranging between 50% below and 50% above the retry interval.
sourcepub fn with_multiplier(
&mut self,
multiplier: f64
) -> &mut ExponentialBackoffBuilder<C>
pub fn with_multiplier( &mut self, multiplier: f64 ) -> &mut ExponentialBackoffBuilder<C>
The value to multiply the current interval with for each retry attempt.
sourcepub fn with_max_interval(
&mut self,
max_interval: Duration
) -> &mut ExponentialBackoffBuilder<C>
pub fn with_max_interval( &mut self, max_interval: Duration ) -> &mut ExponentialBackoffBuilder<C>
The maximum value of the back off period. Once the retry interval reaches this value it stops increasing.
sourcepub fn with_max_elapsed_time(
&mut self,
max_elapsed_time: Option<Duration>
) -> &mut ExponentialBackoffBuilder<C>
pub fn with_max_elapsed_time( &mut self, max_elapsed_time: Option<Duration> ) -> &mut ExponentialBackoffBuilder<C>
The maximum elapsed time after instantiating ExponentialBackfff or calling
reset after which next_backoff returns None.
pub fn build(&self) -> ExponentialBackoff<C>
Trait Implementations§
source§impl<C> Debug for ExponentialBackoffBuilder<C>where
C: Debug,
impl<C> Debug for ExponentialBackoffBuilder<C>where
C: Debug,
source§impl<C> Default for ExponentialBackoffBuilder<C>
impl<C> Default for ExponentialBackoffBuilder<C>
source§fn default() -> ExponentialBackoffBuilder<C>
fn default() -> ExponentialBackoffBuilder<C>
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl<C> Freeze for ExponentialBackoffBuilder<C>
impl<C> RefUnwindSafe for ExponentialBackoffBuilder<C>where
C: RefUnwindSafe,
impl<C> Send for ExponentialBackoffBuilder<C>where
C: Send,
impl<C> Sync for ExponentialBackoffBuilder<C>where
C: Sync,
impl<C> Unpin for ExponentialBackoffBuilder<C>where
C: Unpin,
impl<C> UnwindSafe for ExponentialBackoffBuilder<C>where
C: 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> 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