Expand description
§HTTP Problem-based Error Handling Library
This crate provides a general mechanism for error handling based on the
RFC 7807 problem entity with the Problem type.
Users can find many pre-defined errors at the http and sql modules.
The workflow for error handling with this library is as follow:
- Use the predefined errors/functions or define a new one with the
define_custom_type!macro to returns errors in functions that returnResult<T, Problem>(an alias is provided in the library).- You can also use the extensions traits
ResultExt,ProblemResultExt,OptionExtto handle common cases.
- You can also use the extensions traits
- Catch any desired error with
ProblemResultExt::catch_err.
Modules§
- http
- HTTP related well-known errors.
- prelude
- Prelude imports for this crate.
- reporter
- Definitions for global error reporting.
Macros§
- define_
custom_ type - Define a new custom problem type.
- ensure
- Return early with an
AssertionErrorif a condition is not satisfied. - requires
- Return early with an
UnprocessableEntityif a condition is not satisfied.
Structs§
- Extensions
- Set of extensions of a
Problem. - Problem
- A RFC 7807 Problem Error.