pub struct ClientHandshake<'a> { /* private fields */ }
Expand description
The ClientHandshake
struct represents a client handshake message.
Available fields:
Implementations§
Source§impl<'a> ClientHandshake<'a>
impl<'a> ClientHandshake<'a>
Sourcepub const fn is_buffer(buf: &'a [u8]) -> bool
pub const fn is_buffer(buf: &'a [u8]) -> bool
Checks the constant values for this struct to determine whether this message matches.
Sourcepub fn new(buf: &'a [u8]) -> Result<Self, ParseError>
pub fn new(buf: &'a [u8]) -> Result<Self, ParseError>
Creates a new instance of this struct from a given buffer.
Sourcepub fn params(&self) -> Array<'a, i16, ConnectionParam<'a>>
pub fn params(&self) -> Array<'a, i16, ConnectionParam<'a>>
Connection parameters.
Sourcepub fn extensions(&self) -> Array<'a, i16, ProtocolExtension<'a>>
pub fn extensions(&self) -> Array<'a, i16, ProtocolExtension<'a>>
Requested protocol extensions.
pub fn to_vec(self) -> Vec<u8> ⓘ
Trait Implementations§
Source§impl AsRef<[u8]> for ClientHandshake<'_>
impl AsRef<[u8]> for ClientHandshake<'_>
Source§impl<'a> Clone for ClientHandshake<'a>
impl<'a> Clone for ClientHandshake<'a>
Source§fn clone(&self) -> ClientHandshake<'a>
fn clone(&self) -> ClientHandshake<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'a> DataType for ClientHandshake<'a>
impl<'a> DataType for ClientHandshake<'a>
const META: StructFieldMeta
fn encode_usize(buf: &mut BufWriter<'_>, value: usize)
fn decode_usize(buf: &mut &[u8]) -> Result<usize, ParseError>
Source§impl Debug for ClientHandshake<'_>
impl Debug for ClientHandshake<'_>
Source§impl<'a> DecoderFor<'a, ClientHandshake<'a>> for ClientHandshake<'a>
impl<'a> DecoderFor<'a, ClientHandshake<'a>> for ClientHandshake<'a>
fn decode_for(buf: &mut &'a [u8]) -> Result<Self, ParseError>
Source§impl<'a> Default for ClientHandshake<'a>
impl<'a> Default for ClientHandshake<'a>
Source§fn default() -> ClientHandshake<'a>
fn default() -> ClientHandshake<'a>
Returns the “default value” for a type. Read more
Source§impl<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS> EncoderFor<ClientHandshake<'static>> for &ClientHandshakeBuilder<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS>where
MAJOR_VER: EncoderFor<u16>,
MINOR_VER: EncoderFor<u16>,
PARAMS: EncoderFor<Array<'static, i16, ConnectionParam<'static>>>,
EXTENSIONS: EncoderFor<Array<'static, i16, ProtocolExtension<'static>>>,
impl<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS> EncoderFor<ClientHandshake<'static>> for &ClientHandshakeBuilder<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS>where
MAJOR_VER: EncoderFor<u16>,
MINOR_VER: EncoderFor<u16>,
PARAMS: EncoderFor<Array<'static, i16, ConnectionParam<'static>>>,
EXTENSIONS: EncoderFor<Array<'static, i16, ProtocolExtension<'static>>>,
fn encode_for(&self, buf: &mut BufWriter<'_>)
Source§impl<'a> EncoderFor<ClientHandshake<'static>> for ClientHandshake<'a>
impl<'a> EncoderFor<ClientHandshake<'static>> for ClientHandshake<'a>
fn encode_for(&self, buf: &mut BufWriter<'_>)
Source§impl<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS> EncoderFor<ClientHandshake<'static>> for ClientHandshakeBuilder<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS>where
MAJOR_VER: EncoderFor<u16>,
MINOR_VER: EncoderFor<u16>,
PARAMS: EncoderFor<Array<'static, i16, ConnectionParam<'static>>>,
EXTENSIONS: EncoderFor<Array<'static, i16, ProtocolExtension<'static>>>,
impl<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS> EncoderFor<ClientHandshake<'static>> for ClientHandshakeBuilder<MAJOR_VER, MINOR_VER, PARAMS, EXTENSIONS>where
MAJOR_VER: EncoderFor<u16>,
MINOR_VER: EncoderFor<u16>,
PARAMS: EncoderFor<Array<'static, i16, ConnectionParam<'static>>>,
EXTENSIONS: EncoderFor<Array<'static, i16, ProtocolExtension<'static>>>,
fn encode_for(&self, buf: &mut BufWriter<'_>)
Source§impl PartialEq for ClientHandshake<'_>
impl PartialEq for ClientHandshake<'_>
Source§impl<'a> StructMeta for ClientHandshake<'a>
Implements a trait containing the fields of the struct, allowing
us to compute some useful things.
impl<'a> StructMeta for ClientHandshake<'a>
Implements a trait containing the fields of the struct, allowing us to compute some useful things.
const FIELDS: StructFields
type Struct<'__struct> = ClientHandshake<'__struct>
fn new<'__next_lifetime>( buf: &'__next_lifetime [u8], ) -> Result<Self::Struct<'__next_lifetime>, ParseError>
fn to_vec(&self) -> Vec<u8> ⓘ
const FIELD_COUNT: usize = _
const IS_FIXED_SIZE: bool = _
const FIXED_SIZE: Option<usize> = _
const LENGTH_FIELD_INDEX: Option<usize> = _
const HAS_LENGTH_FIELD: bool = _
impl<'a> Copy for ClientHandshake<'a>
impl Eq for ClientHandshake<'_>
impl StructAttributeFieldCount<{<$name<'_> as $crate::prelude::StructMeta>::FIELD_COUNT}> for ClientHandshake<'_>
Implements a trait indicating that the struct has a field count.
impl StructAttributeFixedSize<{<$name<'_> as $crate::prelude::StructMeta>::IS_FIXED_SIZE}> for ClientHandshake<'_>
Implements a trait indicating that the struct has a fixed size. This needs to be a trait-generic rather than and associated constant for us to use elsewhere.
impl StructAttributeHasLengthField<{<$name<'_> as $crate::prelude::StructMeta>::HAS_LENGTH_FIELD}> for ClientHandshake<'_>
Implements a trait indicating that the struct has a length field.
Auto Trait Implementations§
impl<'a> Freeze for ClientHandshake<'a>
impl<'a> RefUnwindSafe for ClientHandshake<'a>
impl<'a> Send for ClientHandshake<'a>
impl<'a> Sync for ClientHandshake<'a>
impl<'a> Unpin for ClientHandshake<'a>
impl<'a> UnwindSafe for ClientHandshake<'a>
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> EncoderFor<Rest<'static>> for T
impl<T> EncoderFor<Rest<'static>> for T
fn encode_for(&self, buf: &mut BufWriter<'_>)
Source§impl<T> EncoderForExt for Twhere
T: ?Sized,
impl<T> EncoderForExt for Twhere
T: ?Sized,
Source§fn to_vec<F>(&self) -> Vec<u8> ⓘwhere
F: 'static,
Self: EncoderFor<F>,
fn to_vec<F>(&self) -> Vec<u8> ⓘwhere
F: 'static,
Self: EncoderFor<F>,
Convert this builder into a vector of bytes. This is generally
not the most efficient way to perform serialization.
Source§fn encode_buffer<F>(&self, buf: &mut [u8]) -> Result<usize, usize>where
F: 'static,
Self: EncoderFor<F>,
fn encode_buffer<F>(&self, buf: &mut [u8]) -> Result<usize, usize>where
F: 'static,
Self: EncoderFor<F>,
Encode this builder into a given buffer. If the buffer is
too small, the function will return the number of bytes
required to encode the builder.
Source§fn encode_buffer_uninit<'a, F>(
&self,
buf: &'a mut [MaybeUninit<u8>],
) -> Result<&'a mut [u8], usize>where
F: 'static,
Self: EncoderFor<F>,
fn encode_buffer_uninit<'a, F>(
&self,
buf: &'a mut [MaybeUninit<u8>],
) -> Result<&'a mut [u8], usize>where
F: 'static,
Self: EncoderFor<F>,
Encode this builder into a given buffer. If the buffer is
too small, the function will return the number of bytes
required to encode the builder.