Struct cell_gc::GCLeaf
[−]
[src]
pub struct GCLeaf<T: Clone + 'static> { /* fields omitted */ }
GCLeaf can be used to embed just about anything in a GC heap type.
Methods
impl<T: Clone + 'static> GCLeaf<T>
[src]
Trait Implementations
impl<'h, T: Clone + 'static> IntoHeap<'h> for GCLeaf<T>
[src]
type In = GCLeaf<T>
The type of the value when it is physically stored in the heap.
fn into_heap(self) -> GCLeaf<T>
Convert the value to the form it should have in the heap. This is for macro-generated code to call. Read more
unsafe fn from_heap(storage: &GCLeaf<T>) -> GCLeaf<T>
Extract the value from the heap. This turns any raw pointers in the in-heap value into safe references, so while it's an unsafe function, the result of a correct call can be safely handed out to user code. Read more
unsafe fn mark(_storage: &GCLeaf<T>)
Unsafe to call: It is impossible for ordinary users to call this safely, because self
must be a direct, unwrapped reference to a value stored in the GC heap, which ordinary users cannot obtain. Read more
impl<T: Copy + Clone + 'static> Copy for GCLeaf<T>
[src]
impl<T: Clone + Clone + 'static> Clone for GCLeaf<T>
[src]
fn clone(&self) -> GCLeaf<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<T: Debug + Clone + 'static> Debug for GCLeaf<T>
[src]
impl<T: PartialEq + Clone + 'static> PartialEq for GCLeaf<T>
[src]
fn eq(&self, __arg_0: &GCLeaf<T>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &GCLeaf<T>) -> bool
This method tests for !=
.
impl<T: Clone + 'static> Deref for GCLeaf<T>
[src]
type Target = T
The resulting type after dereferencing
fn deref(&self) -> &T
The method called to dereference a value
impl<T: Clone + 'static> DerefMut for GCLeaf<T>
[src]
fn deref_mut(&mut self) -> &mut T
The method called to mutably dereference a value