[][src]Struct h2::RecvStream

#[must_use = "streams do nothing unless polled"]
pub struct RecvStream { /* fields omitted */ }

Receives the body stream and trailers from the remote peer.

A RecvStream is provided by client::ResponseFuture and server::Connection with the received HTTP/2.0 message head (the response and request head respectively).

A RecvStream instance is used to receive the streaming message body and any trailers from the remote peer. It is also used to manage inbound flow control.

See method level documentation for more details on receiving data. See FlowControl for more details on inbound flow control.

Note that this type implements Stream, yielding the received data frames. When this implementation is used, the capacity is immediately released when the data is yielded. It is recommended to only use this API when the data will not be retained in memory for extended periods of time.

Methods

impl RecvStream[src]

pub async fn data<'_>(&'_ mut self) -> Option<Result<Bytes, Error>>[src]

Get the next data frame.

pub async fn trailers<'_>(&'_ mut self) -> Result<Option<HeaderMap>, Error>[src]

Get optional trailers for this stream.

pub fn is_end_stream(&self) -> bool[src]

Returns true if the receive half has reached the end of stream.

A return value of true means that calls to poll and poll_trailers will both return None.

pub fn flow_control(&mut self) -> &mut FlowControl[src]

Get a mutable reference to this stream's FlowControl.

It can be used immediately, or cloned to be used later.

pub fn stream_id(&self) -> StreamId[src]

Returns the stream ID of this stream.

Panics

If the lock on the stream store has been poisoned.

Trait Implementations

impl Drop for RecvStream[src]

impl Debug for RecvStream[src]

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = !

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]