# Struct actix_web::error::InternalError[−][src]

    pub struct InternalError<T> { /* fields omitted */ }

Helper type that can wrap any error and generate custom response.

In following example any `io::Error` will be converted into "BAD REQUEST" response as opposite to INTERNAL SERVER ERROR which is defined by default.

    use actix_web::fs::NamedFile;

    fn index(req: HttpRequest) -> Result<fs::NamedFile> {
        let f = NamedFile::open("test.txt").map_err(error::ErrorBadRequest)?;
        Ok(f)
    }

## Methods

###

`impl<T> InternalError<T>`

[src]

####

`pub fn new(cause: T, status: StatusCode) -> Self`

[src]

Create `InternalError` instance

####

`pub fn from_response(cause: T, response: HttpResponse) -> Self`

[src]

Create `InternalError` with predefined `HttpResponse`.

## Trait Implementations

###

`impl<T> Fail for InternalError<T> where T: Send + Sync + Debug + Display + 'static,`

[src]

####

`fn backtrace(&self) -> Option<&Backtrace>`

[src]

Returns a reference to the `Backtrace` carried by this failure, if it carries one. Read more

####

`fn cause(&self) -> Option<&(Fail + 'static)>` |

Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more

####

`fn context<D>(self, context: D) -> Context<D> where D: Display + Send + Sync + 'static,` |

Provides context for this failure. Read more

####

`fn compat(self) -> Compat<Self>` |

Wraps this failure in a compatibility wrapper that implements `std::error::Error`. Read more

####
ⓘImportant traits for Causes<'f>

### Important traits for Causes<'f>

`impl<'f> Iterator for Causes<'f> type Item = &'f (Fail + 'static);`

`fn causes(&self) -> Causes` |

Returns a iterator over the causes of this `Fail` with itself as the first item and the `root_cause` as the final item. Read more

####

`fn root_cause(&self) -> &(Fail + 'static)` |

Returns the "root cause" of this `Fail` - the last value in the cause chain which does not return an underlying `cause`. Read more

###

`impl<T> Debug for InternalError<T> where T: Send + Sync + Debug + 'static,`

[src]

####

`fn fmt(&self, f: &mut Formatter) -> Result`

[src]

Formats the value using the given formatter. Read more

###

`impl<T> Display for InternalError<T> where T: Send + Sync + Display + 'static,`

[src]

####

`fn fmt(&self, f: &mut Formatter) -> Result`

[src]

Formats the value using the given formatter. Read more

###

`impl<T> ResponseError for InternalError<T> where T: Send + Sync + Debug + Display + 'static,`

[src]

####

`fn error_response(&self) -> HttpResponse`

[src]

Create response for error Read more

###

`impl<T> Responder for InternalError<T> where T: Send + Sync + Debug + Display + 'static,`

[src]

#### `type Item = HttpResponse`

The associated item which can be returned.

#### `type Error = Error`

The associated error which can be returned.

####

`fn respond_to<S>(self, _: &HttpRequest<S>) -> Result<HttpResponse, Error>`

[src]

Convert itself to `AsyncResult` or `Error`.

## Auto Trait Implementations

###

`impl<T> Send for InternalError<T> where T: Send,`

###

`impl<T> Sync for InternalError<T> where T: Sync,`

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g. `str,u8` or `String,struct:Vec,test`)