Struct zerogc_simple::layout::SimpleVecRepr [−][src]
#[repr(C)]pub struct SimpleVecRepr<T: GcSafe> { /* fields omitted */ }
Expand description
The raw representation of a vector in the simple collector
NOTE: Length and capacity are stored implicitly in the GcVecHeader
Trait Implementations
type Erased = SimpleVecRepr<<T as GcErase<'min, Id>>::Erased>
type Erased = SimpleVecRepr<<T as GcErase<'min, Id>>::Erased>
This type with all garbage collected lifetimes
changed to 'static
(or erased) Read more
type Branded = SimpleVecRepr<<T as GcRebrand<'new_gc, Id>>::Branded>
type Branded = SimpleVecRepr<<T as GcRebrand<'new_gc, Id>>::Branded>
This type with all garbage collected lifetimes
changed to 'new_gc
Read more
Right now, there is no stable API for in-place re-allocation
The layout of the underlying element type
Attempt to reallocate the vector in-place, without moving the underlying pointer. Read more
Whether this type needs to be traced by the garbage collector. Read more
If this type needs a destructor run. Read more
Visit each field in this type Read more
unsafe fn visit_inside_gc<'actual_gc, Visitor, ActualId>(
gc: &mut Gc<'actual_gc, Self, ActualId>,
visitor: &mut Visitor
) -> Result<(), Visitor::Err> where
Visitor: GcVisitor,
ActualId: CollectorId,
Self: GcSafe + 'actual_gc,
unsafe fn visit_inside_gc<'actual_gc, Visitor, ActualId>(
gc: &mut Gc<'actual_gc, Self, ActualId>,
visitor: &mut Visitor
) -> Result<(), Visitor::Err> where
Visitor: GcVisitor,
ActualId: CollectorId,
Self: GcSafe + 'actual_gc,
Visit this object, assuming its already inside a GC pointer. Read more