pub enum NextStep<'b, O, P: ReadPrecision> {
Send(Vec<u8>),
Recv(RecvStep<'b, P>),
Finished(Finished<'b, O, P>),
}Available on crate features
proxy-handshake or client-handshake only.Expand description
Next step to take in the handshake
Returned by Handshake::step.
Instructions from the handshake implementation. Caller should match on this and perform the requested action.
Variants§
Send(Vec<u8>)
Caller should send this data to the peer
Recv(RecvStep<'b, P>)
Caller should read from the peer and call one of the received functions.
Finished(Finished<'b, O, P>)
The handshake is complete
The returned Finished can be used to obtain the handshake output.
The Handshake should not be used any more after this.
Trait Implementations§
Auto Trait Implementations§
impl<'b, O, P> Freeze for NextStep<'b, O, P>where
O: Freeze,
impl<'b, O, P> RefUnwindSafe for NextStep<'b, O, P>where
O: RefUnwindSafe,
P: RefUnwindSafe,
impl<'b, O, P> Send for NextStep<'b, O, P>
impl<'b, O, P> Sync for NextStep<'b, O, P>
impl<'b, O, P> Unpin for NextStep<'b, O, P>where
O: Unpin,
impl<'b, O, P> UnsafeUnpin for NextStep<'b, O, P>where
O: UnsafeUnpin,
impl<'b, O, P> !UnwindSafe for NextStep<'b, O, P>
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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