pub unsafe trait PointerOps {
type Value: ?Sized;
type Pointer;
// Required methods
unsafe fn from_raw(&self, value: *const Self::Value) -> Self::Pointer;
fn into_raw(&self, ptr: Self::Pointer) -> *const Self::Value;
}Expand description
Trait for pointer conversion operations.
Value is the actual object type managed by the collection. This type will
typically have a link as a struct field.
Pointer is a pointer type which “owns” an object of type Value.
Operations which insert an element into an intrusive collection will accept
such a pointer and operations which remove an element will return this type.
Required Associated Types§
Required Methods§
Implementors§
Source§impl<'a, T: ?Sized> PointerOps for DefaultPointerOps<&'a T>
impl<'a, T: ?Sized> PointerOps for DefaultPointerOps<&'a T>
Source§impl<'a, T: ?Sized> PointerOps for DefaultPointerOps<Pin<&'a T>>
impl<'a, T: ?Sized> PointerOps for DefaultPointerOps<Pin<&'a T>>
Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<UnsafeRef<T>>
impl<T: ?Sized> PointerOps for DefaultPointerOps<UnsafeRef<T>>
Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Arc<T>>
Available on crate feature alloc only.
impl<T: ?Sized> PointerOps for DefaultPointerOps<Arc<T>>
Available on crate feature
alloc only.Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Box<T>>
Available on crate feature alloc only.
impl<T: ?Sized> PointerOps for DefaultPointerOps<Box<T>>
Available on crate feature
alloc only.Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<UnsafeRef<T>>>
impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<UnsafeRef<T>>>
Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<Arc<T>>>
Available on crate feature alloc only.
impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<Arc<T>>>
Available on crate feature
alloc only.Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<Box<T>>>
Available on crate feature alloc only.
impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<Box<T>>>
Available on crate feature
alloc only.Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<Rc<T>>>
Available on crate feature alloc only.
impl<T: ?Sized> PointerOps for DefaultPointerOps<Pin<Rc<T>>>
Available on crate feature
alloc only.Source§impl<T: ?Sized> PointerOps for DefaultPointerOps<Rc<T>>
Available on crate feature alloc only.
impl<T: ?Sized> PointerOps for DefaultPointerOps<Rc<T>>
Available on crate feature
alloc only.