#[non_exhaustive]pub struct RequestTiming {
pub headers_ms: f64,
pub body_ms: Option<f64>,
pub reused: bool,
pub next_hop_protocol: String,
pub content_encoding: Option<String>,
pub from_cache: bool,
}Expand description
The timing of one request, filled in as it progresses.
Timings are best-effort: internal limitations mean they are not always perfectly accurate.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.headers_ms: f64Milliseconds from the start of the request to the response head being read.
body_ms: Option<f64>Milliseconds from the start of the request to the body finishing, once it has.
reused: boolWhether the request travelled on a connection that was already in the pool.
next_hop_protocol: StringThe ALPN Protocol ID of the protocol the request travelled over.
content_encoding: Option<String>The response’s Content-Encoding, captured before a decoded body’s header is stripped.
from_cache: boolWhether the response was served by the HTTP cache.
Trait Implementations§
Source§impl Clone for RequestTiming
impl Clone for RequestTiming
Source§impl Debug for RequestTiming
impl Debug for RequestTiming
Auto Trait Implementations§
impl Freeze for RequestTiming
impl RefUnwindSafe for RequestTiming
impl Send for RequestTiming
impl Sync for RequestTiming
impl Unpin for RequestTiming
impl UnsafeUnpin for RequestTiming
impl UnwindSafe for RequestTiming
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