[−][src]Function pre::core::mut_pointer__impl__as_ref__
pub fn mut_pointer__impl__as_ref__()
A stub for the preconditions of the core::mut_pointer<T>::as_ref
function.
What is this function?
This function was generated by an impl
block inside a extern_crate
attribute that looked like this:
ⓘThis example is not tested
impl< T > mut_pointer < T > where T : ? Sized { unsafe fn as_ref < 'a > (self) -> Option < & 'a T >; /* other items omitted */ }
Preconditions on external functions inside of an impl
block are attached to empty functions like this one.
When the preconditions should be checked, a call to this function is inserted, which triggers checking the preconditions.
This function has preconditions
This function has the following preconditions generated by pre
attributes:
- the pointer
self
must have a proper alignment for its type self
is null orself
is a valid for readsself
is null orself
points to an initialized value of typeT
- the memory referenced by the returned reference is not mutated by any pointer for the duration of
'a
, except inside a containedUnsafeCell
To call the function you need to assure
that the preconditions hold:
ⓘThis example is not tested
#[forward(impl pre::core::mut_pointer)] #[assure( proper_align(self), reason = "<specify the reason why you can assure this here>" )] #[assure( "`self` is null or `self` is a valid for reads", reason = "<specify the reason why you can assure this here>" )] #[assure( "`self` is null or `self` points to an initialized value of type `T`", reason = "<specify the reason why you can assure this here>" )] #[assure( "the memory referenced by the returned reference is not mutated by any pointer for the duration of `\'a`, except inside a contained `UnsafeCell`", reason = "<specify the reason why you can assure this here>" )] x.as_ref(/* parameters omitted */);