Crate failure

Source
Expand description

An experimental new error-handling library. Guide-style introduction is available here.

The primary items exported by this library are:

  • Fail: a new trait for custom error types in Rust.
  • Error: a wrapper around Fail types to make it easy to coalesce them at higher levels.

As a general rule, library authors should create their own error types and implement Fail for them, whereas application authors should primarily deal with the Error type. There are exceptions to this rule, though, in both directions, and users should do whatever seems most appropriate to their situation.

§Backtraces

Backtraces are disabled by default. To turn backtraces on, enable the backtrace Cargo feature and set the RUST_BACKTRACE environment variable to a non-zero value (this also enables backtraces for panics). Use the RUST_FAILURE_BACKTRACE variable to enable or disable backtraces for failure specifically.

Macros§

bail
Exits a function early with an Error.
ensure
Exits a function early with an Error if the condition is not satisfied.
format_err
Constructs an Error using the standard string interpolation syntax.

Structs§

Backtrace
A Backtrace.
Causes
A iterator over the causes of a Fail
Compat
A compatibility wrapper around an error type from this crate.
Context
An error with context around it.
Error
The Error type, which can contain any failure.
SyncFailure
Wrapper for std errors to make them Sync.

Traits§

AsFail
The AsFail trait
Fail
The Fail trait.
ResultExt
Extension methods for Result.

Functions§

err_msg
Constructs a Fail type from a string.

Type Aliases§

Fallible
A common result with an Error.