Struct arena::DroplessArena [−][src]
pub struct DroplessArena { ptr: Cell<*mut u8>, end: Cell<*mut u8>, chunks: RefCell<Vec<TypedArenaChunk<u8>>>, }
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Fields
ptr: Cell<*mut u8>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
A pointer to the next object to be allocated.
end: Cell<*mut u8>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
A pointer to the end of the allocated area. When this pointer is reached, a new chunk is allocated.
chunks: RefCell<Vec<TypedArenaChunk<u8>>>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
A vector of arena chunks.
Methods
impl DroplessArena
[src]
impl DroplessArena
pub fn new() -> DroplessArena
[src]
pub fn new() -> DroplessArena
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn in_arena<T: ?Sized>(&self, ptr: *const T) -> bool
[src]
pub fn in_arena<T: ?Sized>(&self, ptr: *const T) -> bool
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
fn align_for<T>(&self)
[src]
fn align_for<T>(&self)
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
fn grow<T>(&self, n: usize)
[src]
fn grow<T>(&self, n: usize)
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn alloc<T>(&self, object: T) -> &mut T
[src]
pub fn alloc<T>(&self, object: T) -> &mut T
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
pub fn alloc_slice<T>(&self, slice: &[T]) -> &mut [T] where
T: Copy,
[src]
pub fn alloc_slice<T>(&self, slice: &[T]) -> &mut [T] where
T: Copy,
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Allocates a slice of objects that are copied into the DroplessArena
, returning a mutable
reference to it. Will panic if passed a zero-sized type.
Panics:
- Zero-sized types
- Zero-length slices
Trait Implementations
impl Send for DroplessArena
[src]
impl Send for DroplessArena
Auto Trait Implementations
impl !Sync for DroplessArena
impl !Sync for DroplessArena