Lines Matching refs:Error
155 use core::error::Error;
1667 type Error = Box<[T]>;
1678 fn try_from(boxed_slice: Box<[T]>) -> Result<Self, Self::Error> {
1690 type Error = Vec<T>;
1710 fn try_from(vec: Vec<T>) -> Result<Self, Self::Error> {
2164 impl dyn Error {
2169 pub fn downcast<T: Error + 'static>(self: Box<Self>) -> Result<Box<T>, Box<dyn Error>> {
2172 let raw: *mut dyn Error = Box::into_raw(self);
2181 impl dyn Error + Send {
2186 pub fn downcast<T: Error + 'static>(self: Box<Self>) -> Result<Box<T>, Box<dyn Error + Send>> {
2187 let err: Box<dyn Error> = self;
2188 <dyn Error>::downcast(err).map_err(|s| unsafe {
2190 Box::from_raw(Box::into_raw(s) as *mut (dyn Error + Send))
2195 impl dyn Error + Send + Sync {
2200 pub fn downcast<T: Error + 'static>(self: Box<Self>) -> Result<Box<T>, Box<Self>> {
2201 let err: Box<dyn Error> = self;
2202 <dyn Error>::downcast(err).map_err(|s| unsafe {
2204 Box::from_raw(Box::into_raw(s) as *mut (dyn Error + Send + Sync))
2211 impl<'a, E: Error + 'a> From<E> for Box<dyn Error + 'a> {
2212 /// Converts a type of [`Error`] into a box of dyn [`Error`].
2217 /// use std::error::Error;
2230 /// impl Error for AnError {}
2234 /// let a_boxed_error = Box::<dyn Error>::from(an_error);
2235 /// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
2237 fn from(err: E) -> Box<dyn Error + 'a> {
2244 impl<'a, E: Error + Send + Sync + 'a> From<E> for Box<dyn Error + Send + Sync + 'a> {
2245 /// Converts a type of [`Error`] + [`Send`] + [`Sync`] into a box of
2246 /// dyn [`Error`] + [`Send`] + [`Sync`].
2251 /// use std::error::Error;
2264 /// impl Error for AnError {}
2272 /// let a_boxed_error = Box::<dyn Error + Send + Sync>::from(an_error);
2274 /// mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
2276 fn from(err: E) -> Box<dyn Error + Send + Sync + 'a> {
2283 impl From<String> for Box<dyn Error + Send + Sync> {
2284 /// Converts a [`String`] into a box of dyn [`Error`] + [`Send`] + [`Sync`].
2289 /// use std::error::Error;
2293 /// let a_boxed_error = Box::<dyn Error + Send + Sync>::from(a_string_error);
2295 /// mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
2298 fn from(err: String) -> Box<dyn Error + Send + Sync> {
2301 impl Error for StringError {
2327 impl From<String> for Box<dyn Error> {
2328 /// Converts a [`String`] into a box of dyn [`Error`].
2333 /// use std::error::Error;
2337 /// let a_boxed_error = Box::<dyn Error>::from(a_string_error);
2338 /// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
2340 fn from(str_err: String) -> Box<dyn Error> {
2341 let err1: Box<dyn Error + Send + Sync> = From::from(str_err);
2342 let err2: Box<dyn Error> = err1;
2349 impl<'a> From<&str> for Box<dyn Error + Send + Sync + 'a> {
2350 /// Converts a [`str`] into a box of dyn [`Error`] + [`Send`] + [`Sync`].
2357 /// use std::error::Error;
2361 /// let a_boxed_error = Box::<dyn Error + Send + Sync>::from(a_str_error);
2363 /// mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
2366 fn from(err: &str) -> Box<dyn Error + Send + Sync + 'a> {
2373 impl From<&str> for Box<dyn Error> {
2374 /// Converts a [`str`] into a box of dyn [`Error`].
2381 /// use std::error::Error;
2385 /// let a_boxed_error = Box::<dyn Error>::from(a_str_error);
2386 /// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
2388 fn from(err: &str) -> Box<dyn Error> {
2395 impl<'a, 'b> From<Cow<'b, str>> for Box<dyn Error + Send + Sync + 'a> {
2396 /// Converts a [`Cow`] into a box of dyn [`Error`] + [`Send`] + [`Sync`].
2401 /// use std::error::Error;
2406 /// let a_boxed_error = Box::<dyn Error + Send + Sync>::from(a_cow_str_error);
2408 /// mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
2410 fn from(err: Cow<'b, str>) -> Box<dyn Error + Send + Sync + 'a> {
2417 impl<'a> From<Cow<'a, str>> for Box<dyn Error> {
2418 /// Converts a [`Cow`] into a box of dyn [`Error`].
2423 /// use std::error::Error;
2428 /// let a_boxed_error = Box::<dyn Error>::from(a_cow_str_error);
2429 /// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
2431 fn from(err: Cow<'a, str>) -> Box<dyn Error> {
2437 impl<T: core::error::Error> core::error::Error for Box<T> {
2440 core::error::Error::description(&**self)
2444 fn cause(&self) -> Option<&dyn core::error::Error> {
2445 core::error::Error::cause(&**self)
2448 fn source(&self) -> Option<&(dyn core::error::Error + 'static)> {
2449 core::error::Error::source(&**self)