Struct gotham::handler::HandlerError [−][src]
pub struct HandlerError { /* fields omitted */ }
Expand description
Describes an error which occurred during handler execution, and allows the creation of a HTTP
Response
.
Implementations
Returns the HTTP status code associated with this HandlerError
.
Sets the HTTP status code of the response which is generated by the IntoResponse
implementation.
fn handler(state: State) -> Pin<Box<HandlerFuture>> {
// It's OK if this is bogus, we just need something to convert into a `HandlerError`.
let io_error = std::io::Error::last_os_error();
let handler_error = HandlerError::from(io_error).with_status(StatusCode::IM_A_TEAPOT);
future::err((state, handler_error)).boxed()
}
let test_server = TestServer::new(|| Ok(handler)).unwrap();
let response = test_server
.client()
.get("http://example.com/")
.perform()
.unwrap();
assert_eq!(response.status(), StatusCode::IM_A_TEAPOT);
Returns the cause of this error.
Attempt to downcast the cause by reference.
Trait Implementations
Convert a generic anyhow::Error
into a HandlerError
, similar as you would a concrete error
type with into_handler_error()
.
Performs the conversion.
Converts this value into a hyper::Response
Auto Trait Implementations
impl !RefUnwindSafe for HandlerError
impl Send for HandlerError
impl Sync for HandlerError
impl Unpin for HandlerError
impl !UnwindSafe for HandlerError
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more