pub union MaybeUninit<T> {
// some fields omitted
}
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
A newtype to construct uninitialized instances of T
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Create a new MaybeUninit
in an uninitialized state.
Note that dropping a MaybeUninit
will never call T
's drop code.
It is your responsibility to make sure T
gets dropped if it got initialized.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Create a new MaybeUninit
in an uninitialized state, with the memory being
filled with 0
bytes. It depends on T
whether that already makes for
proper initialization. For example, MaybeUninit<usize>::zeroed()
is initialized,
but MaybeUninit<&'static i32>::zeroed()
is not because references must not
be null.
Note that dropping a MaybeUninit
will never call T
's drop code.
It is your responsibility to make sure T
gets dropped if it got initialized.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Set the value of the MaybeUninit
. This overwrites any previous value without dropping it.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Extract the value from the MaybeUninit
container. This is a great way
to ensure that the data will get dropped, because the resulting T
is
subject to the usual drop handling.
It is up to the caller to guarantee that the the MaybeUninit
really is in an initialized
state, otherwise this will immediately cause undefined behavior.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Get a reference to the contained value.
It is up to the caller to guarantee that the the MaybeUninit
really is in an initialized
state, otherwise this will immediately cause undefined behavior.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Get a mutable reference to the contained value.
It is up to the caller to guarantee that the the MaybeUninit
really is in an initialized
state, otherwise this will immediately cause undefined behavior.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Get a pointer to the contained value. Reading from this pointer will be undefined
behavior unless the MaybeUninit
is initialized.
🔬 This is a nightly-only experimental API. (
maybe_uninit
#53491)
Get a mutable pointer to the contained value. Reading from this pointer will be undefined
behavior unless the MaybeUninit
is initialized.
type Error = !
🔬 This is a nightly-only experimental API. (
try_from
#33417)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (
try_from
#33417)
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from
#33417)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (
try_from
#33417)
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (get_type_id
#27745)
this method will likely be replaced by an associated static