[]Struct yukikaze::connector::rustls::internal::msgs::hsjoiner::HandshakeJoiner

pub struct HandshakeJoiner {
    pub frames: VecDeque<Message>,
    // some fields omitted
}

This works to reconstruct TLS handshake messages from individual TLS messages. It's guaranteed that TLS messages output from this layer contain precisely one handshake payload.

Fields

frames: VecDeque<Message>

Completed handshake frames for output.

Methods

impl HandshakeJoiner

pub fn new() -> HandshakeJoiner

Make a new HandshakeJoiner.

pub fn want_message(&self, msg: &Message) -> bool

Do we want to process this message?

pub fn is_empty(&self) -> bool

Do we have any buffered data?

pub fn take_message(&mut self, msg: Message) -> Option<usize>

Take the message, and join/split it as needed. Return the number of new messages added to the output deque as a result of this message.

Returns None if msg or a preceding message was corrupt. You cannot recover from this situation. Otherwise returns a count of how many messages we queued.

Trait Implementations

impl Default for HandshakeJoiner

Auto Trait Implementations

impl Sync for HandshakeJoiner

impl Send for HandshakeJoiner

impl Unpin for HandshakeJoiner

impl UnwindSafe for HandshakeJoiner

impl RefUnwindSafe for HandshakeJoiner

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self