Skip to content

Commit fbaa7fc

Browse files
std::error::Error -> Trait Implementations: lifetimes consistency improvement
1 parent f0580df commit fbaa7fc

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

library/alloc/src/boxed.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -2276,7 +2276,7 @@ impl<'a, E: Error + Send + Sync + 'a> From<E> for Box<dyn Error + Send + Sync +
22762276

22772277
#[cfg(not(no_global_oom_handling))]
22782278
#[stable(feature = "rust1", since = "1.0.0")]
2279-
impl From<String> for Box<dyn Error + Send + Sync> {
2279+
impl<'a> From<String> for Box<dyn Error + Send + Sync + 'a> {
22802280
/// Converts a [`String`] into a box of dyn [`Error`] + [`Send`] + [`Sync`].
22812281
///
22822282
/// # Examples
@@ -2291,7 +2291,7 @@ impl From<String> for Box<dyn Error + Send + Sync> {
22912291
/// mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
22922292
/// ```
22932293
#[inline]
2294-
fn from(err: String) -> Box<dyn Error + Send + Sync> {
2294+
fn from(err: String) -> Box<dyn Error + Send + Sync + 'a> {
22952295
struct StringError(String);
22962296

22972297
impl Error for StringError {
@@ -2320,7 +2320,7 @@ impl From<String> for Box<dyn Error + Send + Sync> {
23202320

23212321
#[cfg(not(no_global_oom_handling))]
23222322
#[stable(feature = "string_box_error", since = "1.6.0")]
2323-
impl From<String> for Box<dyn Error> {
2323+
impl<'a> From<String> for Box<dyn Error + 'a> {
23242324
/// Converts a [`String`] into a box of dyn [`Error`].
23252325
///
23262326
/// # Examples
@@ -2333,7 +2333,7 @@ impl From<String> for Box<dyn Error> {
23332333
/// let a_boxed_error = Box::<dyn Error>::from(a_string_error);
23342334
/// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
23352335
/// ```
2336-
fn from(str_err: String) -> Box<dyn Error> {
2336+
fn from(str_err: String) -> Box<dyn Error + 'a> {
23372337
let err1: Box<dyn Error + Send + Sync> = From::from(str_err);
23382338
let err2: Box<dyn Error> = err1;
23392339
err2
@@ -2366,7 +2366,7 @@ impl<'a> From<&str> for Box<dyn Error + Send + Sync + 'a> {
23662366

23672367
#[cfg(not(no_global_oom_handling))]
23682368
#[stable(feature = "string_box_error", since = "1.6.0")]
2369-
impl From<&str> for Box<dyn Error> {
2369+
impl<'a> From<&str> for Box<dyn Error + 'a> {
23702370
/// Converts a [`str`] into a box of dyn [`Error`].
23712371
///
23722372
/// [`str`]: prim@str
@@ -2381,7 +2381,7 @@ impl From<&str> for Box<dyn Error> {
23812381
/// let a_boxed_error = Box::<dyn Error>::from(a_str_error);
23822382
/// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
23832383
/// ```
2384-
fn from(err: &str) -> Box<dyn Error> {
2384+
fn from(err: &str) -> Box<dyn Error + 'a> {
23852385
From::from(String::from(err))
23862386
}
23872387
}
@@ -2410,7 +2410,7 @@ impl<'a, 'b> From<Cow<'b, str>> for Box<dyn Error + Send + Sync + 'a> {
24102410

24112411
#[cfg(not(no_global_oom_handling))]
24122412
#[stable(feature = "cow_box_error", since = "1.22.0")]
2413-
impl<'a> From<Cow<'a, str>> for Box<dyn Error> {
2413+
impl<'a, 'b> From<Cow<'b, str>> for Box<dyn Error + 'a> {
24142414
/// Converts a [`Cow`] into a box of dyn [`Error`].
24152415
///
24162416
/// # Examples
@@ -2424,7 +2424,7 @@ impl<'a> From<Cow<'a, str>> for Box<dyn Error> {
24242424
/// let a_boxed_error = Box::<dyn Error>::from(a_cow_str_error);
24252425
/// assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
24262426
/// ```
2427-
fn from(err: Cow<'a, str>) -> Box<dyn Error> {
2427+
fn from(err: Cow<'b, str>) -> Box<dyn Error + 'a> {
24282428
From::from(String::from(err))
24292429
}
24302430
}

0 commit comments

Comments
 (0)