shared_failure 0.1.0

Clone and share errors across thread boundaries
Documentation
  • Coverage
  • 100%
    4 out of 4 items documented1 out of 4 items with examples
  • Size
  • Source code size: 5.36 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 432.87 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 19s Average build duration of successful builds.
  • all releases: 19s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • srijs/rust-shared-failure
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • srijs

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

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

let shared_error = SharedFailure::from_fail(custom_error);

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

assert_eq!(shared_error.to_string(), "oh no!");
assert_eq!(cloned_error.to_string(), "oh no!");

assert_eq!(shared_error.downcast_ref::<std::io::Error>().unwrap().kind(),
    std::io::ErrorKind::Other);