[][src]Crate failure

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 Definitions

Fallible

A common result with an Error.