Struct PushedResponseFuture

#[must_use = "futures do nothing unless polled"]
pub struct PushedResponseFuture { /* private fields */ }

A future of a pushed HTTP response.

We have to differentiate between pushed and non pushed because of the spec https://httpwg.org/specs/rfc7540.html#PUSH_PROMISE

PUSH_PROMISE frames MUST only be sent on a peer-initiated stream that is in either the "open" or "half-closed (remote)" state.

Implementations

impl PushedResponseFuture

fn stream_id(&self) -> StreamId

Returns the stream ID of the response stream.

Panics

If the lock on the stream store has been poisoned.

Trait Implementations

impl Debug for PushedResponseFuture

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

impl Future for PushedResponseFuture

type Output = Result<Response<RecvStream>, Error>;
fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output>

Auto Trait Implementations

impl Freeze for PushedResponseFuture

impl RefUnwindSafe for PushedResponseFuture

impl Send for PushedResponseFuture

impl Sync for PushedResponseFuture

impl Unpin for PushedResponseFuture

impl UnsafeUnpin for PushedResponseFuture

impl UnwindSafe for PushedResponseFuture

Blanket Implementations

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

type Output = <F as Future>::Output;
type IntoFuture = F;
fn into_future(self) -> <F as IntoFuture>::IntoFuture

impl<F, T, E> TryFuture for PushedResponseFuture where F: Future<Output = Result<T, E>> + ?Sized,

type Ok = T;
type Error = E;
fn try_poll(self: Pin<&mut F>, cx: &mut Context<'_>) -> Poll<<F as Future>::Output>

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

impl<T> From<T> for PushedResponseFuture

fn from(t: T) -> T

Returns the argument unchanged.

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

impl<T> Instrument for PushedResponseFuture

impl<T> WithSubscriber for PushedResponseFuture

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

fn into(self) -> U

Calls U::from(self).

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

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

type Error = never;
fn try_from(value: U) -> Result<T, never>

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

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