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:

  1. Use the predefined errors/functions or define a new one with the define_custom_type! macro to returns errors in functions that return Result<T, Problem> (an alias is provided in the library).
  2. Catch any desired error with ProblemResultExt::catch_err.

Modules

HTTP related well-known errors.
Prelude imports for this crate.
Definitions for global error reporting.

Macros

Define a new custom problem type.
Return early with an AssertionError if a condition is not satisfied.
Return early with an UnprocessableEntity if a condition is not satisfied.

Structs

Set of extensions of a Problem.
A RFC 7807 Problem Error.

Type Definitions

An alias for a static Cow<str>.
Convenience alias for functions that can error ouy with Problem.