Struct alloc::boxed::Box
[−]
[src]
pub struct Box<T>(_);
A pointer type for heap allocation.
See the module-level documentation for more.
Methods
impl<T> Box<T>
impl<T: ?Sized> Box<T>
unsafe fn from_raw(raw: *mut T) -> Self
: may be renamed or moved out of Box scope
Constructs a box from the raw pointer.
After this function call, pointer is owned by resulting box.
In particular, it means that Box`Boxdestructor calls destructor of` destructor calls destructor
of T`Tand releases memory. Since the way` and releases memory. Since the way Box`Boxallocates and releases memory is unspecified, the only valid pointer to pass to this function is the one taken from another` allocates and
releases memory is unspecified, the only valid pointer to pass
to this function is the one taken from another Box`Boxwith` with
boxed::into_raw`boxed::into_raw` function.
Function is unsafe, because improper use of this function may lead to memory problems like double-free, for example if the function is called twice on the same raw pointer.
impl Box<Any>
fn downcast<T: Any>(self) -> Result<Box<T>, Box<Any>>
Attempt to downcast the box to a concrete type.
impl Box<Any + Send>
fn downcast<T: Any>(self) -> Result<Box<T>, Box<Any + Send>>
Attempt to downcast the box to a concrete type.