pub trait ReborrowMut<'a> {
    type Result;

    // Required method
    fn reborrow_mut(&'a mut self) -> Self::Result;
}
Expand description

Trait representing the act of “reborrowing” a mutable reference to produce a new one with a shorter lifetime.

Required Associated Types§

source

type Result

Type of the shorter reference

Required Methods§

source

fn reborrow_mut(&'a mut self) -> Self::Result

Produces a new reference with lifetime ’a

Implementations on Foreign Types§

source§

impl<'a, T2, T3, T4, T5, T6, T7, T8, T9, T10> ReborrowMut<'a> for (T2, T3, T4, T5, T6, T7, T8, T9, T10)where T2: ReborrowMut<'a> + 'a, T3: ReborrowMut<'a> + 'a, T4: ReborrowMut<'a> + 'a, T5: ReborrowMut<'a> + 'a, T6: ReborrowMut<'a> + 'a, T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T2 as ReborrowMut<'a>>::Result, <T3 as ReborrowMut<'a>>::Result, <T4 as ReborrowMut<'a>>::Result, <T5 as ReborrowMut<'a>>::Result, <T6 as ReborrowMut<'a>>::Result, <T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for i32

§

type Result = i32

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T4, T5, T6, T7, T8, T9, T10> ReborrowMut<'a> for (T4, T5, T6, T7, T8, T9, T10)where T4: ReborrowMut<'a> + 'a, T5: ReborrowMut<'a> + 'a, T6: ReborrowMut<'a> + 'a, T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T4 as ReborrowMut<'a>>::Result, <T5 as ReborrowMut<'a>>::Result, <T6 as ReborrowMut<'a>>::Result, <T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for ()

§

type Result = ()

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ReborrowMut<'a> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)where T1: ReborrowMut<'a> + 'a, T2: ReborrowMut<'a> + 'a, T3: ReborrowMut<'a> + 'a, T4: ReborrowMut<'a> + 'a, T5: ReborrowMut<'a> + 'a, T6: ReborrowMut<'a> + 'a, T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T1 as ReborrowMut<'a>>::Result, <T2 as ReborrowMut<'a>>::Result, <T3 as ReborrowMut<'a>>::Result, <T4 as ReborrowMut<'a>>::Result, <T5 as ReborrowMut<'a>>::Result, <T6 as ReborrowMut<'a>>::Result, <T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for usize

§

type Result = usize

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for i16

§

type Result = i16

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T8, T9, T10> ReborrowMut<'a> for (T8, T9, T10)where T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for u128

§

type Result = u128

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for f64

§

type Result = f64

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T10> ReborrowMut<'a> for (T10,)where T10: ReborrowMut<'a> + 'a,

§

type Result = (<T10 as ReborrowMut<'a>>::Result,)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T9, T10> ReborrowMut<'a> for (T9, T10)where T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for char

§

type Result = char

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T5, T6, T7, T8, T9, T10> ReborrowMut<'a> for (T5, T6, T7, T8, T9, T10)where T5: ReborrowMut<'a> + 'a, T6: ReborrowMut<'a> + 'a, T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T5 as ReborrowMut<'a>>::Result, <T6 as ReborrowMut<'a>>::Result, <T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for i128

§

type Result = i128

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, 'b: 'a, T: ?Sized> ReborrowMut<'a> for &'b mut T

§

type Result = &'a mut T

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for u32

§

type Result = u32

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for isize

§

type Result = isize

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for i64

§

type Result = i64

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for u64

§

type Result = u64

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for TypeId

§

type Result = TypeId

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for bool

§

type Result = bool

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T7, T8, T9, T10> ReborrowMut<'a> for (T7, T8, T9, T10)where T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for u16

§

type Result = u16

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for f32

§

type Result = f32

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for i8

§

type Result = i8

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T6, T7, T8, T9, T10> ReborrowMut<'a> for (T6, T7, T8, T9, T10)where T6: ReborrowMut<'a> + 'a, T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T6 as ReborrowMut<'a>>::Result, <T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, 'b: 'a, T: ?Sized> ReborrowMut<'a> for &'b T

§

type Result = &'a T

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a> ReborrowMut<'a> for u8

§

type Result = u8

source§

fn reborrow_mut(&'a mut self) -> Self::Result

source§

impl<'a, T3, T4, T5, T6, T7, T8, T9, T10> ReborrowMut<'a> for (T3, T4, T5, T6, T7, T8, T9, T10)where T3: ReborrowMut<'a> + 'a, T4: ReborrowMut<'a> + 'a, T5: ReborrowMut<'a> + 'a, T6: ReborrowMut<'a> + 'a, T7: ReborrowMut<'a> + 'a, T8: ReborrowMut<'a> + 'a, T9: ReborrowMut<'a> + 'a, T10: ReborrowMut<'a> + 'a,

§

type Result = (<T3 as ReborrowMut<'a>>::Result, <T4 as ReborrowMut<'a>>::Result, <T5 as ReborrowMut<'a>>::Result, <T6 as ReborrowMut<'a>>::Result, <T7 as ReborrowMut<'a>>::Result, <T8 as ReborrowMut<'a>>::Result, <T9 as ReborrowMut<'a>>::Result, <T10 as ReborrowMut<'a>>::Result)

source§

fn reborrow_mut(&'a mut self) -> Self::Result

Implementors§