Struct ThinBox Copy item path Source pub struct ThinBox<T: ?Sized > { }🔬 This is a nightly-only experimental API. (thin_box #92791 ) Expand description ThinBox.
A thin pointer for heap allocation, regardless of T.
§ Examples
#![feature(thin_box)]
use std::boxed::ThinBox;
let five = ThinBox::new(5 );
let thin_slice = ThinBox::<[i32]>::new_unsize([1 , 2 , 3 , 4 ]);
let size_of_ptr = size_of::<*const ()>();
assert_eq! (size_of_ptr, size_of_val(& five));
assert_eq! (size_of_ptr, size_of_val(& thin_slice));🔬 This is a nightly-only experimental API. (thin_box #92791 ) Moves a type to the heap with its Metadata stored in the heap allocation instead of on
the stack.
§ Examples
#![feature(thin_box)]
use std::boxed::ThinBox;
let five = ThinBox::new(5 );🔬 This is a nightly-only experimental API. (thin_box #92791 ) Moves a type to the heap with its Metadata stored in the heap allocation instead of on
the stack. Returns an error if allocation fails, instead of aborting.
§ Examples
#![feature(allocator_api)]
#![feature(thin_box)]
use std::boxed::ThinBox;
let five = ThinBox::try_new(5 )? ;🔬 This is a nightly-only experimental API. (thin_box #92791 ) Moves a type to the heap with its Metadata stored in the heap allocation instead of on
the stack.
§ Examples
#![feature(thin_box)]
use std::boxed::ThinBox;
let thin_slice = ThinBox::<[i32]>::new_unsize([1 , 2 , 3 , 4 ]);Formats the value using the given formatter.
Read more The resulting type after dereferencing.
Dereferences the value.
Mutably dereferences the value.
Formats the value using the given formatter.
Read more Executes the destructor for this type.
Read more 🔬 This is a nightly-only experimental API. (pin_ergonomics #130494 ) Execute the destructor for this type, but different to
Drop::drop, it requires
self
to be pinned.
Read more Returns the lower-level source of this error, if any.
Read more 👎 Deprecated since 1.42.0: use the Display impl or to_string()
👎 Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬 This is a nightly-only experimental API. (error_generic_member_access #99301 ) Provides type-based access to context intended for error reports.
Read more Converts to this type from the input type.
Source § ThinBox<T> is Send if T is Send because the data is owned.
Source § ThinBox<T> is Sync if T is Sync because the data is owned.
Immutably borrows from an owned value.
Read more Mutably borrows from an owned value.
Read more Converts to this type from the input type.
Returns the argument unchanged.
Calls U::from(self).
That is, this conversion is whatever the implementation of
From <T> for U chooses to do.
🔬 This is a nightly-only experimental API. (arbitrary_self_types #44874 ) The target type on which the method may be called.
Converts the given value to a
String.
Read more The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.