Skip to main content

ResponseBody

Struct ResponseBody 

Source
pub struct ResponseBody<B = BoxBody> { /* private fields */ }
Expand description

A unified response body type. Generic type is for custom pinned response body(type implement Body).

Implementations§

Source§

impl ResponseBody

Source

pub fn boxed<B, T, E>(body: B) -> Self
where B: Body<Data = T, Error = E> + 'static, T: Into<Bytes> + 'static, E: Into<BodyError> + 'static,

Construct a new Body variant of ResponseBody with default type as BoxBody

Source§

impl<B> ResponseBody<B>

Source

pub const fn empty() -> Self

indicate empty body is attached to response. content-length: 0 header would be added to response when [BodySize] is used for inferring response body type.

Source

pub const fn body(stream: B) -> Self

Construct a new Body variant of ResponseBody

Source

pub fn bytes<B2>(bytes: B2) -> Self
where Bytes: From<B2>,

Construct a new Bytes variant of ResponseBody

Source

pub fn into_boxed<T, E>(self) -> ResponseBody
where B: Body<Data = T, Error = E> + 'static, T: Into<Bytes> + Buf + 'static, E: Error + Send + Sync + 'static,

erase generic body type by boxing the variant.

Trait Implementations§

Source§

impl<B, E> Body for ResponseBody<B>
where B: Body<Data = Bytes, Error = E>,

Source§

type Data = Bytes

The payload data type yielded by Frame::Data variants.
Source§

type Error = E

The error type that can occur while producing frames.
Source§

fn poll_frame( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Option<Result<Frame<Bytes>, E>>>

Attempt to pull the next frame from the body. Read more
Source§

fn is_end_stream(&self) -> bool

Indicates whether the body has been fully consumed. Read more
Source§

fn size_hint(&self) -> SizeHint

Returns a hint about the total size of the remaining Frame::Data payload. Read more
Source§

impl<B> Default for ResponseBody<B>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<B> From<&'static [u8]> for ResponseBody<B>

Source§

fn from(item: &'static [u8]) -> Self

Converts to this type from the input type.
Source§

impl<B> From<&'static str> for ResponseBody<B>

Source§

fn from(item: &'static str) -> Self

Converts to this type from the input type.
Source§

impl<B> From<Box<[u8]>> for ResponseBody<B>

Source§

fn from(item: Box<[u8]>) -> Self

Converts to this type from the input type.
Source§

impl<B> From<Box<str>> for ResponseBody<B>

Source§

fn from(str: Box<str>) -> Self

Converts to this type from the input type.
Source§

impl From<BoxBody> for ResponseBody

Source§

fn from(body: BoxBody) -> Self

Converts to this type from the input type.
Source§

impl<B> From<Bytes> for ResponseBody<B>

Source§

fn from(item: Bytes) -> Self

Converts to this type from the input type.
Source§

impl<B> From<BytesMut> for ResponseBody<B>

Source§

fn from(item: BytesMut) -> Self

Converts to this type from the input type.
Source§

impl<B> From<Cow<'static, str>> for ResponseBody<B>

Source§

fn from(str: Cow<'static, str>) -> Self

Converts to this type from the input type.
Source§

impl<B> From<String> for ResponseBody<B>

Source§

fn from(item: String) -> Self

Converts to this type from the input type.
Source§

impl<B> From<Vec<u8>> for ResponseBody<B>

Source§

fn from(item: Vec<u8>) -> Self

Converts to this type from the input type.
Source§

impl<'__pin, B> Unpin for ResponseBody<B>
where PinnedFieldsOf<__Origin<'__pin, B>>: Unpin,

Auto Trait Implementations§

§

impl<B = BoxBody> !Freeze for ResponseBody<B>

§

impl<B> RefUnwindSafe for ResponseBody<B>
where B: RefUnwindSafe,

§

impl<B> Send for ResponseBody<B>
where B: Send,

§

impl<B> Sync for ResponseBody<B>
where B: Sync,

§

impl<B> UnsafeUnpin for ResponseBody<B>
where B: UnsafeUnpin,

§

impl<B> UnwindSafe for ResponseBody<B>
where B: 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<B> BodyExt for B
where B: Body,

Source§

fn frame(&mut self) -> FrameFuture<'_, Self>
where Self: Unpin,

Source§

fn data(&mut self) -> DataFuture<'_, Self>
where Self: Unpin,

Source§

fn chain<B>(self, other: B) -> ChainBody<Self, B>
where B: Body<Data = Self::Data>, Self: Sized, Self::Error: From<<B as Body>::Error>,

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<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. 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<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more