#[non_exhaustive]pub struct TimeoutConfigBuilder { /* private fields */ }
Expand description
Builder for TimeoutConfig
.
Implementations§
Source§impl TimeoutConfigBuilder
impl TimeoutConfigBuilder
Sourcepub fn new() -> TimeoutConfigBuilder
pub fn new() -> TimeoutConfigBuilder
Creates a new builder with no timeouts set.
Sourcepub fn connect_timeout(self, connect_timeout: Duration) -> TimeoutConfigBuilder
pub fn connect_timeout(self, connect_timeout: Duration) -> TimeoutConfigBuilder
Sets the connect timeout.
The connect timeout is a limit on the amount of time it takes to initiate a socket connection.
Sourcepub fn set_connect_timeout(
&mut self,
connect_timeout: Option<Duration>,
) -> &mut TimeoutConfigBuilder
pub fn set_connect_timeout( &mut self, connect_timeout: Option<Duration>, ) -> &mut TimeoutConfigBuilder
Sets the connect timeout.
If None
is passed, this will explicitly disable the connection timeout.
The connect timeout is a limit on the amount of time it takes to initiate a socket connection.
Sourcepub fn disable_connect_timeout(self) -> TimeoutConfigBuilder
pub fn disable_connect_timeout(self) -> TimeoutConfigBuilder
Disables the connect timeout
Sourcepub fn read_timeout(self, read_timeout: Duration) -> TimeoutConfigBuilder
pub fn read_timeout(self, read_timeout: Duration) -> TimeoutConfigBuilder
Sets the read timeout.
The read timeout is the limit on the amount of time it takes to read the first byte of a response from the time the request is initiated.
Sourcepub fn set_read_timeout(
&mut self,
read_timeout: Option<Duration>,
) -> &mut TimeoutConfigBuilder
pub fn set_read_timeout( &mut self, read_timeout: Option<Duration>, ) -> &mut TimeoutConfigBuilder
Sets the read timeout.
If None
is passed, this will explicitly disable the read timeout. To disable all timeouts use TimeoutConfig::disabled
.
The read timeout is the limit on the amount of time it takes to read the first byte of a response from the time the request is initiated.
Sourcepub fn disable_read_timeout(self) -> TimeoutConfigBuilder
pub fn disable_read_timeout(self) -> TimeoutConfigBuilder
Disables the read timeout
Sourcepub fn operation_timeout(
self,
operation_timeout: Duration,
) -> TimeoutConfigBuilder
pub fn operation_timeout( self, operation_timeout: Duration, ) -> TimeoutConfigBuilder
Sets the operation timeout.
An operation represents the full request/response lifecycle of a call to a service. The operation timeout is a limit on the total amount of time it takes for an operation to be fully serviced, including the time for all retries that may have been attempted for it.
If you want to set a timeout on individual retry attempts, then see Self::operation_attempt_timeout
or Self::set_operation_attempt_timeout
.
Sourcepub fn set_operation_timeout(
&mut self,
operation_timeout: Option<Duration>,
) -> &mut TimeoutConfigBuilder
pub fn set_operation_timeout( &mut self, operation_timeout: Option<Duration>, ) -> &mut TimeoutConfigBuilder
Sets the operation timeout.
If None
is passed, this will explicitly disable the read timeout. To disable all timeouts use TimeoutConfig::disabled
.
An operation represents the full request/response lifecycle of a call to a service. The operation timeout is a limit on the total amount of time it takes for an operation to be fully serviced, including the time for all retries that may have been attempted for it.
If you want to set a timeout on individual retry attempts, then see Self::operation_attempt_timeout
or Self::set_operation_attempt_timeout
.
Sourcepub fn disable_operation_timeout(self) -> TimeoutConfigBuilder
pub fn disable_operation_timeout(self) -> TimeoutConfigBuilder
Disables the operation timeout
Sourcepub fn operation_attempt_timeout(
self,
operation_attempt_timeout: Duration,
) -> TimeoutConfigBuilder
pub fn operation_attempt_timeout( self, operation_attempt_timeout: Duration, ) -> TimeoutConfigBuilder
Sets the operation attempt timeout.
An operation represents the full request/response lifecycle of a call to a service. When retries are enabled, then this setting makes it possible to set a timeout for individual retry attempts (including the initial attempt) for an operation.
If you want to set a timeout on the total time for an entire request including all of its retries,
then see Self::operation_timeout
/// or Self::set_operation_timeout
.
Sourcepub fn set_operation_attempt_timeout(
&mut self,
operation_attempt_timeout: Option<Duration>,
) -> &mut TimeoutConfigBuilder
pub fn set_operation_attempt_timeout( &mut self, operation_attempt_timeout: Option<Duration>, ) -> &mut TimeoutConfigBuilder
Sets the operation attempt timeout.
If None
is passed, this will explicitly disable the operation timeout. To disable all timeouts use TimeoutConfig::disabled
.
An operation represents the full request/response lifecycle of a call to a service. When retries are enabled, then this setting makes it possible to set a timeout for individual retry attempts (including the initial attempt) for an operation.
If you want to set a timeout on individual retry attempts, then see Self::operation_attempt_timeout
or Self::set_operation_attempt_timeout
.
Sourcepub fn disable_operation_attempt_timeout(self) -> TimeoutConfigBuilder
pub fn disable_operation_attempt_timeout(self) -> TimeoutConfigBuilder
Disables the operation_attempt timeout
Sourcepub fn take_unset_from(
self,
other: TimeoutConfigBuilder,
) -> TimeoutConfigBuilder
pub fn take_unset_from( self, other: TimeoutConfigBuilder, ) -> TimeoutConfigBuilder
Merges two timeout config builders together.
Values from other
will only be used as a fallback for values
from self
. Useful for merging configs from different sources together when you want to
handle “precedence” per value instead of at the config level
§Example
let a = TimeoutConfig::builder()
.connect_timeout(Duration::from_secs(3));
let b = TimeoutConfig::builder()
.connect_timeout(Duration::from_secs(5))
.operation_timeout(Duration::from_secs(3));
let timeout_config = a.take_unset_from(b).build();
// A's value take precedence over B's value
assert_eq!(timeout_config.connect_timeout(), Some(Duration::from_secs(3)));
// A never set an operation timeout so B's value is used
assert_eq!(timeout_config.operation_timeout(), Some(Duration::from_secs(3)));
Sourcepub fn build(self) -> TimeoutConfig
pub fn build(self) -> TimeoutConfig
Builds a TimeoutConfig
.
Trait Implementations§
Source§impl Clone for TimeoutConfigBuilder
impl Clone for TimeoutConfigBuilder
Source§fn clone(&self) -> TimeoutConfigBuilder
fn clone(&self) -> TimeoutConfigBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for TimeoutConfigBuilder
impl Debug for TimeoutConfigBuilder
Source§impl Default for TimeoutConfigBuilder
impl Default for TimeoutConfigBuilder
Source§fn default() -> TimeoutConfigBuilder
fn default() -> TimeoutConfigBuilder
Source§impl From<TimeoutConfig> for TimeoutConfigBuilder
impl From<TimeoutConfig> for TimeoutConfigBuilder
Source§fn from(timeout_config: TimeoutConfig) -> TimeoutConfigBuilder
fn from(timeout_config: TimeoutConfig) -> TimeoutConfigBuilder
Auto Trait Implementations§
impl Freeze for TimeoutConfigBuilder
impl RefUnwindSafe for TimeoutConfigBuilder
impl Send for TimeoutConfigBuilder
impl Sync for TimeoutConfigBuilder
impl Unpin for TimeoutConfigBuilder
impl UnwindSafe for TimeoutConfigBuilder
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
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>
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>
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightBlack
.
§Example
println!("{}", value.bright_black());
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightGreen
.
§Example
println!("{}", value.bright_green());
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightYellow
.
§Example
println!("{}", value.bright_yellow());
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightMagenta
.
§Example
println!("{}", value.bright_magenta());
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Returns self
with the
fg()
set to
Color::BrightWhite
.
§Example
println!("{}", value.bright_white());
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightBlack
.
§Example
println!("{}", value.on_bright_black());
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightGreen
.
§Example
println!("{}", value.on_bright_green());
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightYellow
.
§Example
println!("{}", value.on_bright_yellow());
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightBlue
.
§Example
println!("{}", value.on_bright_blue());
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightMagenta
.
§Example
println!("{}", value.on_bright_magenta());
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightCyan
.
§Example
println!("{}", value.on_bright_cyan());
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Returns self
with the
bg()
set to
Color::BrightWhite
.
§Example
println!("{}", value.on_bright_white());
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn underline(&self) -> Painted<&T>
fn underline(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::Underline
.
§Example
println!("{}", value.underline());
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Returns self
with the
attr()
set to
Attribute::RapidBlink
.
§Example
println!("{}", value.rapid_blink());
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);