shared_failure

Build Status Dependency Status

This crate aims to provide a convenient and lightweight way to clone errors and share them across thread-boundaries.

It is designed to be used in conjunction with the failure crate.

Example

```rust let custom_error = std::io::Error::new(std::io::ErrorKind::Other, "oh no!");

let sharederror = SharedFailure::fromfail(custom_error);

// can be cloned, even though std::io::Error does not impl Clone let clonederror = sharederror.clone();

asserteq!(sharederror.tostring(), "oh no!"); asserteq!(clonederror.tostring(), "oh no!");

asserteq!(sharederror.downcast_ref::().unwrap().kind(), std::io::ErrorKind::Other); ```