Trait crossbeam::epoch::Pointer[][src]

pub trait Pointer<T> where
    T: Pointable + ?Sized
{ fn into_usize(self) -> usize;
unsafe fn from_usize(data: usize) -> Self; }
Expand description

A trait for either Owned or Shared pointers.

Required methods

fn into_usize(self) -> usize[src]

Returns the machine representation of the pointer.

unsafe fn from_usize(data: usize) -> Self[src]

Returns a new pointer pointing to the tagged pointer data.

Safety

The given data should have been created by Pointer::into_usize(), and one data should not be converted back by Pointer::from_usize() multiple times.

Implementors

impl<'_, T> Pointer<T> for Shared<'_, T> where
    T: Pointable + ?Sized
[src]

pub fn into_usize(self) -> usize[src]

pub unsafe fn from_usize(data: usize) -> Shared<'_, T>[src]

impl<T> Pointer<T> for Owned<T> where
    T: Pointable + ?Sized
[src]

pub unsafe fn from_usize(data: usize) -> Owned<T>[src]

Returns a new pointer pointing to the tagged pointer data.

Panics

Panics if the data is zero in debug mode.

pub fn into_usize(self) -> usize[src]