Struct failure::Error [] [src]

pub struct Error { /* fields omitted */ }

The Error type, which can contain any failure.

Functions which accumulate many kinds of errors should return this type. All failures can be converted into it, so functions which catch those errors can be tried with ? inside of a function that returns this kind of error.

In addition to implementing Debug and Display, this type carries Backtrace information, and can be downcast into the failure that underlies it for more detailed inspection.

Methods

impl Error
[src]

[src]

Returns a reference to the underlying cause of this Error. Unlike the method on Fail, this does not return an Option. The Error type always has an underlying failure.

[src]

Gets a reference to the Backtrace for this Error.

If the failure this wrapped carried a backtrace, that backtrace will be returned. Otherwise, the backtrace will have been constructed at the point that failure was cast into the Error type.

[src]

Provides context for this Error.

This can provide additional information about this error, appropriate to the semantics of the current layer. That is, if you have a lower-level error, such as an IO error, you can provide additional context about what that error means in the context of your function. This gives users of this function more information about what has gone wrong.

This takes any type that implements Display, as well as Send/Sync/'static. In practice, this means it can take a String or a string literal, or a failure, or some other custom context-carrying type.

[src]

Wraps Error in a compatibility type.

This type implements the Error trait from std::error. If you need to pass failure's Error to an interface that takes any Error, you can use this method to get a compatible type.

[src]

Attempts to downcast this Error to a particular Fail type.

This downcasts by value, returning an owned T if the underlying failure is of the type T. For this reason it returns a Result - in the case that the underlying error is of a different type, the original Error is returned.

[src]

Returns the "root cause" of this error - the last value in the cause chain which does not return an underlying cause.

[src]

Attempts to downcast this Error to a particular Fail type by reference.

If the underlying error is not of type T, this will return None.

[src]

Attempts to downcast this Error to a particular Fail type by mutable reference.

If the underlying error is not of type T, this will return None.

[src]

Returns a iterator over the causes of the Error, beginning with the failure returned by the cause method and ending with the failure returned by root_cause.

Trait Implementations

impl From<Error> for Box<StdError>
[src]

[src]

Performs the conversion.

impl<T> ResultExt<T, Error> for Result<T, Error>
[src]

[src]

Wraps the error in Compat to make it compatible with older error handling APIs that expect std::error::Error. Read more

[src]

Wraps the error type in a context type.

[src]

Wraps the error type in a context type generated by looking at the error value. Read more

impl<F: Fail> From<F> for Error
[src]

[src]

Performs the conversion.

impl Display for Error
[src]

[src]

Formats the value using the given formatter. Read more

impl Debug for Error
[src]

[src]

Formats the value using the given formatter. Read more