Trait crossbeam_epoch::Pointer[][src]

pub trait Pointer<T: ?Sized + Pointable> {
    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: ?Sized + Pointable> Pointer<T> for Owned<T>[src]

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

Returns a new pointer pointing to the tagged pointer data.

Panics

Panics if the data is zero in debug mode.

fn into_usize(self) -> usize[src]

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

fn into_usize(self) -> usize[src]

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