Struct gotham_restful::Raw
source · pub struct Raw<T> {
pub raw: T,
pub mime: Mime,
}
Expand description
This type can be used both as a raw request body, as well as as a raw response. However, all types of request bodies are accepted by this type. It is therefore recommended to derive your own type from RequestBody and only use this when you need to return a raw response. This is a usage example that simply returns its body:
#[derive(Resource)]
#[resource(create)]
struct ImageResource;
#[create]
fn create(body: Raw<Vec<u8>>) -> Raw<Vec<u8>> {
body
}
Fields§
§raw: T
§mime: Mime
Implementations§
Trait Implementations§
source§impl<T: for<'a> From<&'a [u8]>> FromBody for Raw<T>
impl<T: for<'a> From<&'a [u8]>> FromBody for Raw<T>
§type Err = Infallible
type Err = Infallible
The error type returned by the conversion if it was unsuccessfull. When using the derive
macro, there is no way to trigger an error, so std::convert::Infallible is used here.
However, this might change in the future.
source§impl<T: Into<Body>> IntoResponse for Raw<T>where
Self: Send,
impl<T: Into<Body>> IntoResponse for Raw<T>where
Self: Send,
source§impl<T> RequestBody for Raw<T>
impl<T> RequestBody for Raw<T>
source§impl<T: Into<Body>> ResponseSchema for Raw<T>where
Self: Send,
impl<T: Into<Body>> ResponseSchema for Raw<T>where
Self: Send,
source§fn schema(code: StatusCode) -> OpenapiSchema
fn schema(code: StatusCode) -> OpenapiSchema
Return the schema of the response for the given status code. The code may
only be one that was previously returned by Self::status_codes. The
implementation should panic if that is not the case.
source§fn status_codes() -> Vec<StatusCode>
fn status_codes() -> Vec<StatusCode>
All status codes returned by this response. Returns
[StatusCode::OK]
by default.Auto Trait Implementations§
impl<T> RefUnwindSafe for Raw<T>where
T: RefUnwindSafe,
impl<T> Send for Raw<T>where
T: Send,
impl<T> Sync for Raw<T>where
T: Sync,
impl<T> Unpin for Raw<T>where
T: Unpin,
impl<T> UnwindSafe for Raw<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more