Struct fixed_bump::RcBump [−][src]
Expand description
Tuple Fields
0: Rc<Bump<Size, Align>>
Implementations
Methods from Deref<Target = Bump<Size, Align>>
Tries to allocate memory with a size and alignment matching layout
.
Returns a pointer to the memory on success, or None
on failure.
The memory is valid until the Bump
is dropped. Note that the
returned memory could be larger than layout.size()
.
This method is similar to Allocator::allocate
, except it returns an
Option
instead of a Result
.
Allocation is guaranteed to succeed, assuming the global allocator
succeeds, if layout.size()
is less than or equal to
mem::size_of::<Size>()
and layout.align()
is less than
or equal to mem::align_of::<Align>()
.
Allocation may fail, but is not guaranteed to fail, if
layout.align()
is greater than
mem::align_of::<Align>()
. Allocation is guaranteed to
fail if layout.size()
is greater than
mem::size_of::<Size>()
.
Allocates a value of type T
.
The memory is initialized with value
and a reference to the value is
returned. Note that the value’s destructor will not be called
automatically.
Panics
Panics if Self::allocate
is not able to allocate memory matching
Layout::new::<T>()
. See Self::allocate
for
details regarding the circumstances in which allocation can fail.
For a non-panicking equivalent, see Self::try_alloc_value
.
Tries to allocate a value of type T
.
If the allocation succeeds, the memory is initialized with value
and
a reference to the value is returned. Note that the value’s destructor
will not be called automatically.
Allocation succeeds if and only if Self::allocate
is able to
allocate memory matching Layout::new::<T>()
. See Self::allocate
for details regarding the circumstances in which allocation can fail.
Errors
If allocation fails, Err(value)
is returned.
Trait Implementations
allocator_api
)Attempts to allocate a block of memory. Read more
allocator_api
)Deallocates the memory referenced by ptr
. Read more
allocator_api
)Behaves like allocate
, but also ensures that the returned memory is zero-initialized. Read more
allocator_api
)Attempts to extend the memory block. Read more
allocator_api
)Behaves like grow
, but also ensures that the new contents are set to zero before being
returned. Read more
allocator_api
)Attempts to shrink the memory block. Read more
Auto Trait Implementations
impl<Size, Align = Size> !RefUnwindSafe for RcBump<Size, Align>
impl<Size, Align = Size> !UnwindSafe for RcBump<Size, Align>
Blanket Implementations
Mutably borrows from an owned value. Read more