d9d4a906c9
Currently CPAL only really uses `failure` for its `derive` capabilities and the ability to easily generate implementations for `Display`. That said there are a few issues with using the `failure` crate: - `failure` does not provie a `std::error::Error` implementation without first converting error types into `failure::Error`. - It leaks significantly into the public API and expects downstream users to also depend on `failure` and the non-std `Fail` trait for their own error handling. - Solved problems such as downcasting of causal errors which have since been addressed in `std`. - Provides application-friendly `Fail` trait and `failure::Error` type, not particularly useful to libraries like CPAL. The [`thiserror` crate](https://github.com/dtolnay/thiserror) is better targeted towards libraries, does not leak into the public API while providing easy generation of `Display`, `From` and `std::error::Error` implementations including proper handling of the newish `std::error::Error::source` method. |
||
---|---|---|
.. | ||
host | ||
platform | ||
error.rs | ||
lib.rs | ||
samples_formats.rs | ||
traits.rs |