Struct arena::TypedArena [−][src]
pub struct TypedArena<T> { /* fields omitted */ }
An arena that can hold objects of only one type.
Methods
impl<T> TypedArena<T>
[src]
impl<T> TypedArena<T>
pub fn new() -> TypedArena<T>
[src]
pub fn new() -> TypedArena<T>
Creates a new TypedArena
.
pub fn alloc(&self, object: T) -> &mut T
[src]
pub fn alloc(&self, object: T) -> &mut T
Allocates an object in the TypedArena
, returning a reference to it.
pub fn alloc_slice(&self, slice: &[T]) -> &mut [T] where
T: Copy,
[src]
pub fn alloc_slice(&self, slice: &[T]) -> &mut [T] where
T: Copy,
Allocates a slice of objects that are copied into the TypedArena
, returning a mutable
reference to it. Will panic if passed a zero-sized types.
Panics:
- Zero-sized types
- Zero-length slices
pub fn clear(&mut self)
[src]
pub fn clear(&mut self)
Clears the arena. Deallocates all but the longest chunk which may be reused.
Trait Implementations
impl<T> Drop for TypedArena<T>
[src]
impl<T> Drop for TypedArena<T>
impl<T: Send> Send for TypedArena<T>
[src]
impl<T: Send> Send for TypedArena<T>
Auto Trait Implementations
impl<T> !Sync for TypedArena<T>
impl<T> !Sync for TypedArena<T>