pub trait ResultExt<T> {
    // Required method
    fn chain_err<F, EK>(self, callback: F) -> Result<T, Error>
       where F: FnOnce() -> EK,
             EK: Into<ErrorKind>;
}
Expand description

Additional methods for Result, for easy interaction with this crate.

Required Methods§

source

fn chain_err<F, EK>(self, callback: F) -> Result<T, Error>where F: FnOnce() -> EK, EK: Into<ErrorKind>,

If the Result is an Err then chain_err evaluates the closure, which returns some type that can be converted to ErrorKind, boxes the original error to store as the cause, then returns a new error containing the original error.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<T> ResultExt<T> for Option<T>

source§

fn chain_err<F, EK>(self, callback: F) -> Result<T, Error>where F: FnOnce() -> EK, EK: Into<ErrorKind>,

source§

impl<T, E> ResultExt<T> for Result<T, E>where E: Error + Send + 'static,

source§

fn chain_err<F, EK>(self, callback: F) -> Result<T, Error>where F: FnOnce() -> EK, EK: Into<ErrorKind>,

Implementors§