DowngradeIntoFn

Type Alias DowngradeIntoFn 

Source
pub type DowngradeIntoFn = for<'ptr> unsafe fn(strong: PtrMut<'ptr>, weak: PtrUninit<'ptr>) -> PtrMut<'ptr>;
Expand description

Downgrades a strong pointer to a weak one.

Initializes the pointer into the given weak, and returns a copy of weak, which has been guaranteed to be initialized.

Only strong pointers can be downgraded (like alloc::sync::Arc or alloc::rc::Rc).

ยงSafety

strong must be a valid strong pointer (like alloc::sync::Arc or alloc::rc::Rc).

weak must be allocated, and of the right layout for the corresponding weak pointer.

weak must not have been initialized yet.