Struct s2n_quic_core::inet::ipv6::Header
source · #[repr(C)]pub struct Header { /* private fields */ }Implementations§
source§impl Header
impl Header
pub fn new<vtcfl: Into<Vtcfl>, payload_len: Into<U16>, next_header: Into<Protocol>, hop_limit: Into<u8>, source: Into<IpV6Address>, destination: Into<IpV6Address>>( vtcfl: vtcfl, payload_len: payload_len, next_header: next_header, hop_limit: hop_limit, source: source, destination: destination ) -> Self
pub fn as_bytes(&self) -> &[u8] ⓘ
pub fn as_bytes_mut(&mut self) -> &mut [u8] ⓘ
source§impl Header
impl Header
pub const fn vtcfl(&self) -> &Vtcfl
pub fn vtcfl_mut(&mut self) -> &mut Vtcfl
pub const fn payload_len(&self) -> &U16
pub fn payload_len_mut(&mut self) -> &mut U16
pub const fn next_header(&self) -> &Protocol
pub fn next_header_mut(&mut self) -> &mut Protocol
pub const fn hop_limit(&self) -> &u8
pub fn hop_limit_mut(&mut self) -> &mut u8
pub const fn source(&self) -> &IpV6Address
pub fn source_mut(&mut self) -> &mut IpV6Address
pub const fn destination(&self) -> &IpV6Address
pub fn destination_mut(&mut self) -> &mut IpV6Address
Trait Implementations§
source§impl AsBytes for Header
impl AsBytes for Header
source§impl<'a> DecoderValue<'a> for &'a Header
impl<'a> DecoderValue<'a> for &'a Header
fn decode(buffer: DecoderBuffer<'a>) -> DecoderBufferResult<'_, Self>
source§impl<'a> DecoderValue<'a> for Header
impl<'a> DecoderValue<'a> for Header
fn decode(buffer: DecoderBuffer<'a>) -> DecoderBufferResult<'_, Self>
source§impl<'a> DecoderValueMut<'a> for &'a Header
impl<'a> DecoderValueMut<'a> for &'a Header
fn decode_mut(buffer: DecoderBufferMut<'a>) -> DecoderBufferMutResult<'a, Self>
source§impl<'a> DecoderValueMut<'a> for &'a mut Header
impl<'a> DecoderValueMut<'a> for &'a mut Header
fn decode_mut(buffer: DecoderBufferMut<'a>) -> DecoderBufferMutResult<'a, Self>
source§impl<'a> DecoderValueMut<'a> for Header
impl<'a> DecoderValueMut<'a> for Header
fn decode_mut(buffer: DecoderBufferMut<'a>) -> DecoderBufferMutResult<'_, Self>
source§impl<'a> EncoderValue for &'a Header
impl<'a> EncoderValue for &'a Header
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
Lenfn encode_to_vec(&self) -> Vec<u8>
source§impl<'a> EncoderValue for &'a mut Header
impl<'a> EncoderValue for &'a mut Header
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
Lenfn encode_to_vec(&self) -> Vec<u8>
source§impl EncoderValue for Header
impl EncoderValue for Header
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
Lenfn encode_to_vec(&self) -> Vec<u8>
source§impl FromBytes for Header
impl FromBytes for Header
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 Headerwhere
Vtcfl: FromZeroes,
U16: FromZeroes,
Protocol: FromZeroes,
u8: FromZeroes,
IpV6Address: FromZeroes,
impl FromZeroes for Headerwhere
Vtcfl: FromZeroes,
U16: FromZeroes,
Protocol: FromZeroes,
u8: FromZeroes,
IpV6Address: FromZeroes,
source§impl Ord for Header
impl Ord for Header
source§impl PartialEq for Header
impl PartialEq for Header
source§impl PartialOrd for Header
impl PartialOrd for Header
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 Header
impl Eq for Header
impl StructuralEq for Header
impl StructuralPartialEq for Header
impl Unaligned for Header
Auto Trait Implementations§
impl RefUnwindSafe for Header
impl Send for Header
impl Sync for Header
impl Unpin for Header
impl UnwindSafe for Header
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.