Skip to main content

ResponseBody

Enum ResponseBody 

Source
pub enum ResponseBody {
    Bytes(Bytes),
    File {
        file: File,
        size: u64,
    },
}
Expand description

A response body. Most handlers return ResponseBody::Bytes built from an in-memory Bytes buffer; the File variant exists so large disk-backed objects can be streamed straight from the filesystem to the HTTP body without being materialized into RAM. The file handle is opened by the service handler while it still holds the per-bucket read guard, so the reader sees a consistent inode even if a concurrent PUT/DELETE renames or unlinks the path before dispatch streams the body.

Variants§

§

Bytes(Bytes)

§

File

Fields

§file: File
§size: u64

Implementations§

Source§

impl ResponseBody

Source

pub fn len(&self) -> u64

Source

pub fn is_empty(&self) -> bool

Source

pub fn expect_bytes(&self) -> &[u8]

Accessor that returns the bytes of a Bytes variant and panics for File. Used by tests and by callers that know the response was built from an in-memory buffer (JSON handlers, cross-service glue).

Trait Implementations§

Source§

impl Debug for ResponseBody

Source§

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

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

impl Default for ResponseBody

Source§

fn default() -> Self

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

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

Source§

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

Converts to this type from the input type.
Source§

impl From<&'static str> for ResponseBody

Source§

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

Converts to this type from the input type.
Source§

impl From<Bytes> for ResponseBody

Source§

fn from(b: Bytes) -> Self

Converts to this type from the input type.
Source§

impl From<String> for ResponseBody

Source§

fn from(s: String) -> Self

Converts to this type from the input type.
Source§

impl From<Vec<u8>> for ResponseBody

Source§

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

Converts to this type from the input type.
Source§

impl PartialEq<Bytes> for ResponseBody

Source§

fn eq(&self, other: &Bytes) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

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

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,