Struct rjs::gc::GcHeap [] [src]

pub struct GcHeap {
    // some fields omitted
}

Methods

impl GcHeap

fn new(walker: Box<GcWalker>, opts: GcOpts) -> GcHeap

unsafe fn alloc<T>(&self, ty: u32) -> Ptr<T>

fn alloc_root<T>(&self, ty: u32) -> Root<T>

fn alloc_local<T>(&self, ty: u32) -> Local<T>

fn alloc_array_root<T>(&self, ty: u32, size: usize) -> ArrayRoot<T>

fn alloc_array_local<T>(&self, ty: u32, size: usize) -> ArrayLocal<T>

unsafe fn alloc_array<T>(&self, ty: u32, size: usize) -> Array<T>

fn gc(&self)

fn mem_allocated(&self) -> usize

fn mem_used(&self) -> usize

fn new_local_scope(&self) -> LocalScope

Trait Implementations

impl GcAllocator for GcHeap

fn alloc_array_local_from_root<T>(&self, root: &ArrayRoot<T>) -> ArrayLocal<T>

fn alloc_array_root_from_local<T>(&self, local: ArrayLocal<T>) -> ArrayRoot<T>

fn alloc_array_local_from_array<T>(&self, array: Array<T>) -> ArrayLocal<T>

fn alloc_root_from_local<T>(&self, local: Local<T>) -> Root<T>

fn alloc_local_from_ptr<T>(&self, ptr: Ptr<T>) -> Local<T>

fn alloc_local_from_root<T>(&self, root: &Root<T>) -> Local<T>