pub struct PointerIdentity<P: Pointer>(pub P);Expand description
Wrapper type that uses the pointer address rather than the value as the identity for the
PartialEq, Eq, PartialOrd, Ord and Hash traits.
This wrapper is transparent thanks to implementing both Deref and DerefMut, so you can
use an instance of this just like you would use an instance of the type you are wrapping.
Tuple Fields§
§0: PImplementations§
Trait Implementations§
Source§impl<P: Clone + Pointer> Clone for PointerIdentity<P>
impl<P: Clone + Pointer> Clone for PointerIdentity<P>
Source§fn clone(&self) -> PointerIdentity<P>
fn clone(&self) -> PointerIdentity<P>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<P: Copy + Pointer> Copy for PointerIdentity<P>
Source§impl<P: Default + Pointer> Default for PointerIdentity<P>
impl<P: Default + Pointer> Default for PointerIdentity<P>
Source§fn default() -> PointerIdentity<P>
fn default() -> PointerIdentity<P>
Returns the “default value” for a type. Read more
Source§impl<P: Pointer> Deref for PointerIdentity<P>
impl<P: Pointer> Deref for PointerIdentity<P>
Source§impl<P: Pointer> DerefMut for PointerIdentity<P>
impl<P: Pointer> DerefMut for PointerIdentity<P>
impl<P: Pointer> Eq for PointerIdentity<P>
Source§impl<P: Pointer> From<P> for PointerIdentity<P>
impl<P: Pointer> From<P> for PointerIdentity<P>
Source§impl<P: Pointer> Hash for PointerIdentity<P>
impl<P: Pointer> Hash for PointerIdentity<P>
Source§impl<P: Pointer> Ord for PointerIdentity<P>
impl<P: Pointer> Ord for PointerIdentity<P>
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl<P: Pointer> PartialEq for PointerIdentity<P>
impl<P: Pointer> PartialEq for PointerIdentity<P>
Source§impl<P: Pointer> PartialOrd for PointerIdentity<P>
impl<P: Pointer> PartialOrd for PointerIdentity<P>
Auto Trait Implementations§
impl<P> Freeze for PointerIdentity<P>where
P: Freeze,
impl<P> RefUnwindSafe for PointerIdentity<P>where
P: RefUnwindSafe,
impl<P> Send for PointerIdentity<P>where
P: Send,
impl<P> Sync for PointerIdentity<P>where
P: Sync,
impl<P> Unpin for PointerIdentity<P>where
P: Unpin,
impl<P> UnsafeUnpin for PointerIdentity<P>where
P: UnsafeUnpin,
impl<P> UnwindSafe for PointerIdentity<P>where
P: UnwindSafe,
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