#[non_exhaustive]pub struct Parts<T, S> {
pub io: T,
pub read_buf: Bytes,
pub service: S,
}Available on crate feature
server only.Expand description
Deconstructed parts of a Connection.
This allows taking apart a Connection at a later time, in order to
reclaim the IO object, and additional related pieces.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.io: TThe original IO object used in the handshake.
read_buf: BytesA buffer of bytes that have been read but not processed as HTTP.
If the client sent additional bytes after its last request, and this connection “ended” with an upgrade, the read buffer will contain those bytes.
You will want to check for any existing bytes if you plan to continue communicating on the IO object.
service: SThe Service used to serve this connection.
Trait Implementations§
Auto Trait Implementations§
impl<T, S> !Freeze for Parts<T, S>
impl<T, S> RefUnwindSafe for Parts<T, S>where
T: RefUnwindSafe,
S: RefUnwindSafe,
impl<T, S> Send for Parts<T, S>
impl<T, S> Sync for Parts<T, S>
impl<T, S> Unpin for Parts<T, S>
impl<T, S> UnwindSafe for Parts<T, S>where
T: UnwindSafe,
S: UnwindSafe,
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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.