Struct s2n_quic_core::inet::ip::Protocol
source · #[repr(C)]pub struct Protocol { /* private fields */ }
Implementations§
source§impl Protocol
impl Protocol
pub const HOPOPT: Self = _
pub const fn is_hop_by_hop(self) -> bool
pub const ICMP: Self = _
pub const fn is_icmp(self) -> bool
pub const IPV4: Self = _
pub const fn is_ipv4(self) -> bool
pub const TCP: Self = _
pub const fn is_tcp(self) -> bool
pub const UDP: Self = _
pub const fn is_udp(self) -> bool
pub const IPV6: Self = _
pub const fn is_ipv6(self) -> bool
pub const IPV6_ROUTE: Self = _
pub const fn is_ipv6_route(self) -> bool
pub const IPV6_FRAG: Self = _
pub const fn is_ipv6_fragment(self) -> bool
pub const IPV6_ICMP: Self = _
pub const fn is_ipv6_icmp(self) -> bool
pub const IPV6_NO_NXT: Self = _
pub const fn is_ipv6_no_next(self) -> bool
pub const IPV6_OPTS: Self = _
pub const fn is_ipv6_options(self) -> bool
pub const UDPLITE: Self = _
pub const fn is_udplite(self) -> bool
Trait Implementations§
source§impl AsBytes for Protocol
impl AsBytes for Protocol
source§impl<'a> DecoderValue<'a> for &'a Protocol
impl<'a> DecoderValue<'a> for &'a Protocol
fn decode(buffer: DecoderBuffer<'a>) -> DecoderBufferResult<'_, Self>
source§impl<'a> DecoderValue<'a> for Protocol
impl<'a> DecoderValue<'a> for Protocol
fn decode(buffer: DecoderBuffer<'a>) -> DecoderBufferResult<'_, Self>
source§impl<'a> DecoderValueMut<'a> for &'a Protocol
impl<'a> DecoderValueMut<'a> for &'a Protocol
fn decode_mut(buffer: DecoderBufferMut<'a>) -> DecoderBufferMutResult<'a, Self>
source§impl<'a> DecoderValueMut<'a> for &'a mut Protocol
impl<'a> DecoderValueMut<'a> for &'a mut Protocol
fn decode_mut(buffer: DecoderBufferMut<'a>) -> DecoderBufferMutResult<'a, Self>
source§impl<'a> DecoderValueMut<'a> for Protocol
impl<'a> DecoderValueMut<'a> for Protocol
fn decode_mut(buffer: DecoderBufferMut<'a>) -> DecoderBufferMutResult<'_, Self>
source§impl<'a> EncoderValue for &'a Protocol
impl<'a> EncoderValue for &'a Protocol
source§fn encoding_size(&self) -> usize
fn encoding_size(&self) -> usize
Returns the encoding size with no buffer constrains
source§fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize
fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize
Returns the encoding size for the given encoder’s capacity
source§fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
Encodes the value into the encoder, while potentially mutating the value itself
source§fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
Encodes the value into the encoder with a prefix of
Len
fn encode_to_vec(&self) -> Vec<u8>
source§impl<'a> EncoderValue for &'a mut Protocol
impl<'a> EncoderValue for &'a mut Protocol
source§fn encoding_size(&self) -> usize
fn encoding_size(&self) -> usize
Returns the encoding size with no buffer constrains
source§fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize
fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize
Returns the encoding size for the given encoder’s capacity
source§fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
Encodes the value into the encoder, while potentially mutating the value itself
source§fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
Encodes the value into the encoder with a prefix of
Len
fn encode_to_vec(&self) -> Vec<u8>
source§impl EncoderValue for Protocol
impl EncoderValue for Protocol
source§fn encoding_size(&self) -> usize
fn encoding_size(&self) -> usize
Returns the encoding size with no buffer constrains
source§fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize
fn encoding_size_for_encoder<E: Encoder>(&self, _encoder: &E) -> usize
Returns the encoding size for the given encoder’s capacity
source§fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
Encodes the value into the encoder, while potentially mutating the value itself
source§fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
Encodes the value into the encoder with a prefix of
Len
fn encode_to_vec(&self) -> Vec<u8>
source§impl FromBytes for Protocol
impl FromBytes for Protocol
source§fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>where
Self: Sized,
fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>where
Self: Sized,
Interprets the prefix of the given
bytes
as a &[Self]
with length
equal to count
without copying. Read moresource§fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>where
Self: Sized,
fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>where
Self: Sized,
Interprets the suffix of the given
bytes
as a &[Self]
with length
equal to count
without copying. Read moresource§fn mut_slice_from_prefix(
bytes: &mut [u8],
count: usize
) -> Option<(&mut [Self], &mut [u8])>
fn mut_slice_from_prefix( bytes: &mut [u8], count: usize ) -> Option<(&mut [Self], &mut [u8])>
Interprets the prefix of the given
bytes
as a &mut [Self]
with length
equal to count
without copying. Read moresource§fn mut_slice_from_suffix(
bytes: &mut [u8],
count: usize
) -> Option<(&mut [u8], &mut [Self])>
fn mut_slice_from_suffix( bytes: &mut [u8], count: usize ) -> Option<(&mut [u8], &mut [Self])>
Interprets the suffix of the given
bytes
as a &mut [Self]
with length
equal to count
without copying. Read moresource§impl FromZeroes for Protocolwhere
u8: FromZeroes,
impl FromZeroes for Protocolwhere
u8: FromZeroes,
source§impl Ord for Protocol
impl Ord for Protocol
source§impl PartialEq for Protocol
impl PartialEq for Protocol
source§impl PartialOrd for Protocol
impl PartialOrd for Protocol
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Copy for Protocol
impl Eq for Protocol
impl StructuralPartialEq for Protocol
impl Unaligned for Protocol
Auto Trait Implementations§
impl Freeze for Protocol
impl RefUnwindSafe for Protocol
impl Send for Protocol
impl Sync for Protocol
impl Unpin for Protocol
impl UnwindSafe for Protocol
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> PacketPayloadEncoder for Twhere
T: EncoderValue,
impl<T> PacketPayloadEncoder for Twhere
T: EncoderValue,
source§fn encoding_size_hint<E>(&mut self, encoder: &E, minimum_len: usize) -> usizewhere
E: Encoder,
fn encoding_size_hint<E>(&mut self, encoder: &E, minimum_len: usize) -> usizewhere
E: Encoder,
Returns an estimate of the encoding size of the payload. This
may be inaccurate from what actually is encoded. Estimates should
be less than or equal to what is actually written.
Implementations can return 0 to skip encoding.