summaryrefslogtreecommitdiffstats
path: root/third_party/rust/failure/src/box_std.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/failure/src/box_std.rs')
-rw-r--r--third_party/rust/failure/src/box_std.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/third_party/rust/failure/src/box_std.rs b/third_party/rust/failure/src/box_std.rs
new file mode 100644
index 0000000000..05891db13c
--- /dev/null
+++ b/third_party/rust/failure/src/box_std.rs
@@ -0,0 +1,19 @@
+use std::error::Error;
+use std::fmt;
+use Fail;
+
+pub struct BoxStd(pub Box<dyn Error + Send + Sync + 'static>);
+
+impl fmt::Display for BoxStd {
+ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+ fmt::Display::fmt(&self.0, f)
+ }
+}
+
+impl fmt::Debug for BoxStd {
+ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+ fmt::Debug::fmt(&self.0, f)
+ }
+}
+
+impl Fail for BoxStd {}