pub struct Rtt(/* private fields */);Expand description
Sec-CH-RTT client hint: the approximate round-trip time on the application
layer, modelled as a Duration.
Unlike transport-layer RTT this includes server processing time. The value is rounded to the nearest 25 ms to limit fingerprinting. See the Network Information API.
Corresponds to ClientHint::Rtt; encoded as Sec-CH-RTT.
§Example
use std::time::Duration;
use rama_http_headers::Rtt;
let rtt = Rtt::from_millis(100);
assert_eq!(Duration::from(rtt), Duration::from_millis(100));Implementations§
Source§impl Rtt
impl Rtt
Sourcepub const HINT: ClientHint = ClientHint::Rtt
pub const HINT: ClientHint = ClientHint::Rtt
The ClientHint this typed value parser corresponds to.
Sourcepub const fn from_millis(millis: u64) -> Rtt
pub const fn from_millis(millis: u64) -> Rtt
Create an Rtt hint from a round-trip time in milliseconds.
Sourcepub const fn as_duration(self) -> Duration
pub const fn as_duration(self) -> Duration
Returns the round-trip time as a Duration.
Trait Implementations§
impl Copy for Rtt
impl Eq for Rtt
Source§impl HeaderDecode for Rtt
impl HeaderDecode for Rtt
Source§fn decode<'i, I>(values: &mut I) -> Result<Rtt, Error>where
I: Iterator<Item = &'i HeaderValue>,
fn decode<'i, I>(values: &mut I) -> Result<Rtt, Error>where
I: Iterator<Item = &'i HeaderValue>,
Decode this type from an iterator of
HeaderValues.Source§impl HeaderEncode for Rtt
impl HeaderEncode for Rtt
Source§fn encode<E>(&self, values: &mut E)where
E: Extend<HeaderValue>,
fn encode<E>(&self, values: &mut E)where
E: Extend<HeaderValue>,
Encode this type to a
HeaderValue, and add it to a container
which has HeaderValue type as each element. Read moreSource§fn encode_to_value(&self) -> Option<HeaderValue>
fn encode_to_value(&self) -> Option<HeaderValue>
Encode this header to
HeaderValue. Read moreSource§impl Ord for Rtt
impl Ord for Rtt
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for Rtt
impl PartialOrd for Rtt
impl StructuralPartialEq for Rtt
Source§impl TypedHeader for Rtt
impl TypedHeader for Rtt
Source§fn name() -> &'static HeaderName
fn name() -> &'static HeaderName
The name of this header.
Auto Trait Implementations§
impl Freeze for Rtt
impl RefUnwindSafe for Rtt
impl Send for Rtt
impl Sync for Rtt
impl Unpin for Rtt
impl UnsafeUnpin for Rtt
impl UnwindSafe for Rtt
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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