1 use std::error::{Error, Request}; 2 3 #[doc(hidden)] 4 pub trait ThiserrorProvide: Sealed { thiserror_provide<'a>(&'a self, request: &mut Request<'a>)5 fn thiserror_provide<'a>(&'a self, request: &mut Request<'a>); 6 } 7 8 impl<T> ThiserrorProvide for T 9 where 10 T: Error + ?Sized, 11 { 12 #[inline] thiserror_provide<'a>(&'a self, request: &mut Request<'a>)13 fn thiserror_provide<'a>(&'a self, request: &mut Request<'a>) { 14 self.provide(request); 15 } 16 } 17 18 #[doc(hidden)] 19 pub trait Sealed {} 20 impl<T: Error + ?Sized> Sealed for T {} 21