pub struct Co<'a>(/* private fields */);Expand description
Used to declare an covariant relationship between a type and its lifetime parameter.
A covariant type is one for which the compiler can safely shorten its
lifetime parameter as needed when passing it to a function; for example,
&'a T is covariant w.r.t. 'a, so &'static str can be used where
&'short str is expected.
See the Transience documentation for more information.
Trait Implementations§
impl<'a, R> CanRecoverFrom<(R,)> for Co<'a>where
Co<'a>: CanRecoverFrom<R>,
impl<'a, R1, R2> CanRecoverFrom<(R1, R2)> for Co<'a>
impl<'a, R1, R2, R3> CanRecoverFrom<(R1, R2, R3)> for Co<'a>
impl<'a, R1, R2, R3, R4> CanRecoverFrom<(R1, R2, R3, R4)> for Co<'a>
impl<'a, R> CanRecoverFrom<Co<'a>> for (R,)where
R: CanRecoverFrom<Co<'a>>,
impl<'a, R1, R2> CanRecoverFrom<Co<'a>> for (R1, R2)
impl<'a, R1, R2, R3> CanRecoverFrom<Co<'a>> for (R1, R2, R3)
impl<'a, R1, R2, R3, R4> CanRecoverFrom<Co<'a>> for (R1, R2, R3, R4)where
R1: CanRecoverFrom<Co<'a>>,
R2: CanRecoverFrom<Co<'a>>,
R3: CanRecoverFrom<Co<'a>>,
R4: CanRecoverFrom<Co<'a>>,
impl<'a, 'b: 'a> CanRecoverFrom<Co<'b>> for Co<'a>
impl<'a, 'b: 'a> CanRecoverFrom<Co<'b>> for Inv<'a>
impl<'a> CanRecoverFrom<Inv<'a>> for Co<'a>
impl<'a, R> CanTranscendTo<(R,)> for Co<'a>where
Co<'a>: CanTranscendTo<R>,
impl<'a, R1, R2> CanTranscendTo<(R1, R2)> for Co<'a>
impl<'a, R1, R2, R3> CanTranscendTo<(R1, R2, R3)> for Co<'a>
impl<'a, R1, R2, R3, R4> CanTranscendTo<(R1, R2, R3, R4)> for Co<'a>
impl<'a, R> CanTranscendTo<Co<'a>> for (R,)where
R: CanTranscendTo<Co<'a>>,
impl<'a, R1, R2> CanTranscendTo<Co<'a>> for (R1, R2)
impl<'a, R1, R2, R3> CanTranscendTo<Co<'a>> for (R1, R2, R3)
impl<'a, R1, R2, R3, R4> CanTranscendTo<Co<'a>> for (R1, R2, R3, R4)where
R1: CanTranscendTo<Co<'a>>,
R2: CanTranscendTo<Co<'a>>,
R3: CanTranscendTo<Co<'a>>,
R4: CanTranscendTo<Co<'a>>,
impl<'a, 'b: 'a> CanTranscendTo<Co<'a>> for Co<'b>
impl<'a, 'b: 'a> CanTranscendTo<Inv<'a>> for Co<'b>
impl<'a> Copy for Co<'a>
impl<'a> Transience for Co<'a>
Auto Trait Implementations§
impl<'a> Freeze for Co<'a>
impl<'a> RefUnwindSafe for Co<'a>
impl<'a> Send for Co<'a>
impl<'a> Sync for Co<'a>
impl<'a> Unpin for Co<'a>
impl<'a> UnwindSafe for Co<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more