Struct ref_extended::RefExtended
source · #[repr(transparent)]pub struct RefExtended<T: ?Sized>(_);Expand description
This struct extends reference of value as long as lifetime of value
Dropping this value will abort process to ensure the lifetime of reference
Implementations§
source§impl<T> RefExtended<T>
impl<T> RefExtended<T>
source§impl<'b, T: ?Sized + 'b> RefExtended<&T>
impl<'b, T: ?Sized + 'b> RefExtended<&T>
sourcepub unsafe fn static_ref(&self) -> &'b T
pub unsafe fn static_ref(&self) -> &'b T
Returns reference with lifetime of value
This method is unsafe because
- It can create immutable reference while having mutable reference
source§impl<'b, T: ?Sized + 'b> RefExtended<&mut T>
impl<'b, T: ?Sized + 'b> RefExtended<&mut T>
sourcepub unsafe fn static_mut(&mut self) -> &'b mut T
pub unsafe fn static_mut(&mut self) -> &'b mut T
Returns mutable reference with lifetime of value
This method is unsafe because
- It can create mutable reference while having immutable references
- It can create multiple mutable reference