pub fn without_shutdown(self) -> impl Future<Output = crate::Result<Parts<I, S>>>
    where
        S: Unpin,
        S::Future: Unpin,
        B: Unpin,
    {
        let mut conn = Some(self);
        futures_util::future::poll_fn(move |cx| {
            ready!(conn.as_mut().unwrap().poll_without_shutdown(cx))?;
            Poll::Ready(Ok(conn.take().unwrap().into_parts()))
        })
    }
/// Prevent shutdown of the underlying IO object at the end of service the request,
/// instead run `into_parts`. This is a convenience wrapper over `poll_without_shutdown`.
Prevent shutdown of the underlying IO object at the end of service the request,
instead run `into_parts`. This is a convenience wrapper over `poll_without_shutdown`.
Prevent shutdown of the underlying IO object at the end of service the request instead run ` into_parts ` . This is a convenience wrapper over ` poll_without_shutdown ` .
pub fn without_shutdown(self) -> impl Future<Output = crate::Result<Parts<I, S>>>
    where
        S: Unpin,
        S::Future: Unpin,
        B: Unpin,
    {
        let mut conn = Some(self);
        futures_util::future::poll_fn(move |cx| {
            ready!(conn.as_mut().unwrap().poll_without_shutdown(cx))?;
            Poll::Ready(Ok(conn.take().unwrap().into_parts()))
        })
    }
pub fn without_shutdown ( self ) -> impl Future < Output = crate :: Result < Parts < I , S > > > where S : Unpin , S :: Future : Unpin , B : Unpin , { let mut conn = Some ( self ) ; futures_util :: future :: poll_fn ( move | cx | { ready ! ( conn as_mut ( ) unwrap ( ) poll_without_shutdown ( cx ) ) ? ; Poll :: Ready ( Ok ( conn . take ( ) . unwrap ( ) . into_parts ( ) ) ) } ) }
Prevent shutdown of the underlying IO object at the end of service the request,
instead run `into_parts`.
Prevent shutdown of the underlying IO object at the end of service the request instead run ` into_parts ` .
self
self