Sha256: c93bd9191f26a7599043b397e26822564d9bafaa339a19861182a9909e8a3811
Contents?: true
Size: 1.08 KB
Versions: 11
Compression:
Stored size: 1.08 KB
Contents
use std::error::Error; use std::panic::UnwindSafe; pub trait AsDynError<'a>: Sealed { fn as_dyn_error(&self) -> &(dyn Error + 'a); } impl<'a, T: Error + 'a> AsDynError<'a> for T { #[inline] fn as_dyn_error(&self) -> &(dyn Error + 'a) { self } } impl<'a> AsDynError<'a> for dyn Error + 'a { #[inline] fn as_dyn_error(&self) -> &(dyn Error + 'a) { self } } impl<'a> AsDynError<'a> for dyn Error + Send + 'a { #[inline] fn as_dyn_error(&self) -> &(dyn Error + 'a) { self } } impl<'a> AsDynError<'a> for dyn Error + Send + Sync + 'a { #[inline] fn as_dyn_error(&self) -> &(dyn Error + 'a) { self } } impl<'a> AsDynError<'a> for dyn Error + Send + Sync + UnwindSafe + 'a { #[inline] fn as_dyn_error(&self) -> &(dyn Error + 'a) { self } } pub trait Sealed {} impl<'a, T: Error + 'a> Sealed for T {} impl<'a> Sealed for dyn Error + 'a {} impl<'a> Sealed for dyn Error + Send + 'a {} impl<'a> Sealed for dyn Error + Send + Sync + 'a {} impl<'a> Sealed for dyn Error + Send + Sync + UnwindSafe + 'a {}
Version data entries
11 entries across 11 versions & 1 rubygems