From 895d3834e53d65c1f8c00f37defbb8c836bbe7d6 Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Sat, 5 Oct 2019 00:02:36 -0400 Subject: [PATCH] Rename as_error to as_dyn_error --- src/as_dyn_error.rs | 30 ++++++++++++++++++++++++++++++ src/as_error.rs | 30 ------------------------------ src/error.rs | 4 ++-- src/lib.rs | 4 ++-- 4 files changed, 34 insertions(+), 34 deletions(-) create mode 100644 src/as_dyn_error.rs delete mode 100644 src/as_error.rs diff --git a/src/as_dyn_error.rs b/src/as_dyn_error.rs new file mode 100644 index 0000000..dc38382 --- /dev/null +++ b/src/as_dyn_error.rs @@ -0,0 +1,30 @@ +use std::error::Error as StdError; + +use crate::Error; + +/// View error as a `&dyn std::error::Error`. +pub trait AsDynError { + /// View type as an error object. + fn as_dyn_error(&self) -> &(dyn StdError + Send + Sync + 'static); +} + +impl AsDynError for T +where + T: StdError + Send + Sync + 'static, +{ + fn as_dyn_error(&self) -> &(dyn StdError + Send + Sync + 'static) { + self + } +} + +impl AsDynError for dyn StdError + Send + Sync + 'static { + fn as_dyn_error(&self) -> &(dyn StdError + Send + Sync + 'static) { + self + } +} + +impl AsDynError for Error { + fn as_dyn_error(&self) -> &(dyn StdError + Send + Sync + 'static) { + &**self + } +} diff --git a/src/as_error.rs b/src/as_error.rs deleted file mode 100644 index 2262af8..0000000 --- a/src/as_error.rs +++ /dev/null @@ -1,30 +0,0 @@ -use std::error::Error as StdError; - -use crate::Error; - -/// View type as an error object. -pub trait AsError { - /// View type as an error object. - fn as_error(&self) -> &(dyn StdError + Send + Sync + 'static); -} - -impl AsError for T -where - T: StdError + Send + Sync + 'static, -{ - fn as_error(&self) -> &(dyn StdError + Send + Sync + 'static) { - self - } -} - -impl AsError for dyn StdError + Send + Sync + 'static { - fn as_error(&self) -> &(dyn StdError + Send + Sync + 'static) { - self - } -} - -impl AsError for Error { - fn as_error(&self) -> &(dyn StdError + Send + Sync + 'static) { - &**self - } -} diff --git a/src/error.rs b/src/error.rs index aecaebf..1a863cf 100644 --- a/src/error.rs +++ b/src/error.rs @@ -67,12 +67,12 @@ impl Error { } /// View this error object as the underlying error. - pub fn as_error(&self) -> &(dyn StdError + Send + Sync + 'static) { + pub fn as_dyn_error(&self) -> &(dyn StdError + Send + Sync + 'static) { &**self } /// View this error object as the underlying error, mutably. - pub fn as_error_mut(&mut self) -> &mut (dyn StdError + Send + Sync + 'static) { + pub fn as_dyn_error_mut(&mut self) -> &mut (dyn StdError + Send + Sync + 'static) { &mut **self } diff --git a/src/lib.rs b/src/lib.rs index 78082f5..a158bb5 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,10 +1,10 @@ #![feature(backtrace)] -mod as_error; +mod as_dyn_error; mod context; mod error; -pub use crate::as_error::AsError; +pub use crate::as_dyn_error::AsDynError; pub use crate::context::Context; pub use crate::error::{Error, Errors};