Struct PacketizationProfile
pub struct PacketizationProfile { /* private fields */ }Available on crate feature
quic only.Expand description
How packets and datagrams are formed.
Implementations§
§impl PacketizationProfile
impl PacketizationProfile
pub fn standard() -> PacketizationProfile
pub fn standard() -> PacketizationProfile
This crate’s own packetization.
pub fn initial_datagram_size(&self) -> u16
pub fn initial_datagram_size(&self) -> u16
The size Initial datagrams are padded to (RFC 9000 §14.1 requires at least 1200).
pub fn packet_number_length(&self) -> PacketNumberLength
pub fn first_packet_number(&self) -> u64
pub fn first_packet_number(&self) -> u64
The packet number of the first packet in every space.
pub fn layout(&self) -> InitialFlightLayout
pub fn padding(&self) -> PaddingPlacement
pub fn try_with_initial_datagram_size( self, size: u16, ) -> Result<PacketizationProfile, ProfileError>
pub fn try_with_packet_number_length( self, length: PacketNumberLength, ) -> Result<PacketizationProfile, ProfileError>
pub fn try_with_first_packet_number(
self,
first: u64,
) -> Result<PacketizationProfile, ProfileError>
pub fn try_with_first_packet_number( self, first: u64, ) -> Result<PacketizationProfile, ProfileError>
The first packet number. Since nothing is acknowledged yet, this packet’s truncated number spans twice its value, and QUIC’s largest truncation is four bytes (RFC 9000 §17.1), so it must stay below 2^31 to be encodable.
pub fn with_layout(self, layout: InitialFlightLayout) -> PacketizationProfile
pub fn set_layout( &mut self, layout: InitialFlightLayout, ) -> &mut PacketizationProfile
pub fn with_padding(self, padding: PaddingPlacement) -> PacketizationProfile
pub fn set_padding( &mut self, padding: PaddingPlacement, ) -> &mut PacketizationProfile
pub fn with_coalesce(self, coalesce: bool) -> PacketizationProfile
pub fn with_coalesce(self, coalesce: bool) -> PacketizationProfile
Whether long-header packets of different spaces share a datagram. On by default.
pub fn set_coalesce(&mut self, coalesce: bool) -> &mut PacketizationProfile
pub fn set_coalesce(&mut self, coalesce: bool) -> &mut PacketizationProfile
Whether long-header packets of different spaces share a datagram. On by default.
pub fn min_packet_number_len(&self) -> u8
pub fn min_packet_number_len(&self) -> u8
The minimum packet-number length this profile encodes with.
Trait Implementations§
§impl Clone for PacketizationProfile
impl Clone for PacketizationProfile
§fn clone(&self) -> PacketizationProfile
fn clone(&self) -> PacketizationProfile
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 more§impl Debug for PacketizationProfile
impl Debug for PacketizationProfile
§impl Default for PacketizationProfile
impl Default for PacketizationProfile
§fn default() -> PacketizationProfile
fn default() -> PacketizationProfile
Returns the “default value” for a type. Read more
§impl<'de> Deserialize<'de> for PacketizationProfile
impl<'de> Deserialize<'de> for PacketizationProfile
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<PacketizationProfile, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<PacketizationProfile, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for PacketizationProfile
§impl PartialEq for PacketizationProfile
impl PartialEq for PacketizationProfile
§impl Serialize for PacketizationProfile
impl Serialize for PacketizationProfile
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for PacketizationProfile
§impl TryFrom<PacketizationProfileRepr> for PacketizationProfile
impl TryFrom<PacketizationProfileRepr> for PacketizationProfile
§type Error = ProfileError
type Error = ProfileError
The type returned in the event of a conversion error.
§fn try_from(
repr: PacketizationProfileRepr,
) -> Result<PacketizationProfile, <PacketizationProfile as TryFrom<PacketizationProfileRepr>>::Error>
fn try_from( repr: PacketizationProfileRepr, ) -> Result<PacketizationProfile, <PacketizationProfile as TryFrom<PacketizationProfileRepr>>::Error>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for PacketizationProfile
impl RefUnwindSafe for PacketizationProfile
impl Send for PacketizationProfile
impl Sync for PacketizationProfile
impl Unpin for PacketizationProfile
impl UnsafeUnpin for PacketizationProfile
impl UnwindSafe for PacketizationProfile
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more