Responder

Trait Responder 

Source
pub trait Responder:
    Sized
    + Send
    + Sync
    + 'static {
    type Error: HttpError;

    // Required method
    fn respond_to(
        self,
        _request: &Request,
        response: &mut Response,
    ) -> Result<(), Self::Error>;
}
Expand description

Transform a object into a part of HTTP response,always is response body,header,etc.

Required Associated Types§

Source

type Error: HttpError

Error type returned when responding fails.

Required Methods§

Source

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Modify the response,sometime also read the request (but the body may have already been consumed).

§Errors

Returns an error if the response fails.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Responder for &'static str

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for &'static [u8]

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for (HeaderName, HeaderValue)

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for Cow<'static, str>

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for Cow<'static, [u8]>

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for ()

Source§

type Error = TupleResponderError

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for String

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for Vec<u8>

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for Pin<Box<dyn AsyncBufRead + Send + Sync + 'static>>

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for Bytes

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl Responder for ByteStr

Source§

type Error = Infallible

Source§

fn respond_to( self, _request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder> Responder for (T0,)

Source§

type Error = TupleResponderError<T0>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder> Responder for (T0, T1)

Source§

type Error = TupleResponderError<T0, T1>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder> Responder for (T0, T1, T2)

Source§

type Error = TupleResponderError<T0, T1, T2>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder> Responder for (T0, T1, T2, T3)

Source§

type Error = TupleResponderError<T0, T1, T2, T3>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder> Responder for (T0, T1, T2, T3, T4)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder> Responder for (T0, T1, T2, T3, T4, T5)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder, T9: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder, T9: Responder, T10: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder, T9: Responder, T10: Responder, T11: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder, T9: Responder, T10: Responder, T11: Responder, T12: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder, T9: Responder, T10: Responder, T11: Responder, T12: Responder, T13: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T0: Responder, T1: Responder, T2: Responder, T3: Responder, T4: Responder, T5: Responder, T6: Responder, T7: Responder, T8: Responder, T9: Responder, T10: Responder, T11: Responder, T12: Responder, T13: Responder, T14: Responder> Responder for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Source§

type Error = TupleResponderError<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T: Responder> Responder for Result<T, Error>

Source§

type Error = Box<dyn HttpError>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Source§

impl<T: Responder, E: HttpError> Responder for Result<T, E>

Source§

type Error = Box<dyn HttpError>

Source§

fn respond_to( self, request: &Request, response: &mut Response, ) -> Result<(), Self::Error>

Implementors§