Struct avr_oxide::StaticRefMut
source · pub struct StaticRefMut<'sr, T: ?Sized + 'sr> { /* private fields */ }
Implementations§
source§impl<'sr, T: ?Sized + 'sr> StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + 'sr> StaticRefMut<'sr, T>
sourcepub unsafe fn static_ref(&self) -> &'static T
pub unsafe fn static_ref(&self) -> &'static T
Return a reference to the contained object with a 'static
lifetime.
§Safety
The returned reference is guaranteed to be valid for the 'static
lifetime. However, this remains unsafe because it allows the caller
to evade the normal borrow checker rules about not holding more than
one mutable reference to the contents of the type.
sourcepub unsafe fn static_ref_mut(&mut self) -> &'static mut T
pub unsafe fn static_ref_mut(&mut self) -> &'static mut T
Return a mutable reference to the contained object with a 'static
lifetime.
§Safety
The returned reference is guaranteed to be valid for the 'static
lifetime. However, this remains unsafe because it allows the caller
to evade the normal borrow checker rules about not holding more than
one mutable reference to the contents of the type.
Trait Implementations§
source§impl<'sr, T: ?Sized + 'sr> AsStaticRef<T> for StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + 'sr> AsStaticRef<T> for StaticRefMut<'sr, T>
unsafe fn as_static_ref(&self) -> &'static T
source§impl<'sr, T: ?Sized + 'sr> AsStaticRefMut<T> for StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + 'sr> AsStaticRefMut<T> for StaticRefMut<'sr, T>
unsafe fn as_static_ref_mut(&mut self) -> &'static mut T
source§impl<'sr, T: ?Sized + 'sr> Deref for StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + 'sr> Deref for StaticRefMut<'sr, T>
source§impl<'sr, T: ?Sized + 'sr> DerefMut for StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + 'sr> DerefMut for StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + Send + 'sr> Send for StaticRefMut<'sr, T>
impl<'sr, T: ?Sized + Sync + 'sr> Sync for StaticRefMut<'sr, T>
Auto Trait Implementations§
impl<'sr, T> Freeze for StaticRefMut<'sr, T>where
T: ?Sized,
impl<'sr, T> !RefUnwindSafe for StaticRefMut<'sr, T>
impl<'sr, T> Unpin for StaticRefMut<'sr, T>where
T: ?Sized,
impl<'sr, T> !UnwindSafe for StaticRefMut<'sr, T>
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