Skip to main content

H1Close

Struct H1Close 

Source
pub struct H1Close<Transport>(/* private fields */);
Expand description

The close of a finished HTTP/1.x connection.

Awaiting it shuts down our sending side of the transport, then reads and discards whatever the client still sends until it closes its side. If the transport is dropped while the client is still sending, the operating system answers with a TCP reset, which can destroy the end of a response the client hasn’t read yet. A client that never closes keeps this pending indefinitely, so await it under a timeout. Dropping it closes the connection immediately.

When the client has already closed the connection, it completes immediately.

Trait Implementations§

Source§

impl<Transport> Debug for H1Close<Transport>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<Transport> Future for H1Close<Transport>
where Transport: AsyncRead + AsyncWrite + Unpin,

Source§

type Output = ()

The type of value produced on completion.
Source§

fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<()>

Attempts to resolve the future to a final value, registering the current task for wakeup if the value is not yet available. Read more

Auto Trait Implementations§

§

impl<Transport> Freeze for H1Close<Transport>
where GracefulClose<Transport>: Freeze,

§

impl<Transport> RefUnwindSafe for H1Close<Transport>
where GracefulClose<Transport>: RefUnwindSafe,

§

impl<Transport> Send for H1Close<Transport>
where GracefulClose<Transport>: Send,

§

impl<Transport> Sync for H1Close<Transport>
where GracefulClose<Transport>: Sync,

§

impl<Transport> Unpin for H1Close<Transport>
where GracefulClose<Transport>: Unpin,

§

impl<Transport> UnsafeUnpin for H1Close<Transport>
where GracefulClose<Transport>: UnsafeUnpin,

§

impl<Transport> UnwindSafe for H1Close<Transport>
where GracefulClose<Transport>: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<F> FutureExt for F
where F: Future + ?Sized,

Source§

fn poll(&mut self, cx: &mut Context<'_>) -> Poll<Self::Output>
where Self: Unpin,

A convenience for calling Future::poll() on !Unpin types.
Source§

fn or<F>(self, other: F) -> Or<Self, F> ⓘ
where Self: Sized, F: Future<Output = Self::Output>,

Returns the result of self or other future, preferring self if both are ready. Read more
Source§

fn race<F>(self, other: F) -> Race<Self, F> ⓘ
where Self: Sized, F: Future<Output = Self::Output>,

Returns the result of self or other future, with no preference if both are ready. Read more
Source§

fn catch_unwind(self) -> CatchUnwind<Self> ⓘ
where Self: Sized + UnwindSafe,

Catches panics while polling the future. Read more
Source§

fn boxed<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + Send + 'a>>
where Self: Sized + Send + 'a,

Boxes the future and changes its type to dyn Future + Send + 'a. Read more
Source§

fn boxed_local<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>
where Self: Sized + 'a,

Boxes the future and changes its type to dyn Future + 'a. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<F> IntoFuture for F
where F: Future,

Source§

type Output = <F as Future>::Output

The output that the future will produce on completion.
Source§

type IntoFuture = F

Which kind of future are we turning this into?
Source§

fn into_future(self) -> <F as IntoFuture>::IntoFuture

Creates a future from a value. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.