Expand description
Basic functions for dealing with memory.
This module contains functions for querying the size and alignment of types, initializing and manipulating memory.
Macros§
- offset_
of - Expands to the offset in bytes of a field from the beginning of the given type.
Structs§
- Discriminant
- Opaque type representing the discriminant of an enum.
- Manually
Drop - A wrapper to inhibit the compiler from automatically calling
T
’s destructor. This wrapper is 0-cost. - Assume
Experimental - Configurable proof assumptions of
TransmuteFrom
.
Traits§
- Transmute
From Experimental - Marks that
Src
is transmutable intoSelf
.
Functions§
- align_
of - Returns the ABI-required minimum alignment of a type in bytes.
- align_
of_ val - Returns the ABI-required minimum alignment of the type of the value that
val
points to in bytes. - discriminant
- Returns a value uniquely identifying the enum variant in
v
. - drop
- Disposes of a value.
- forget
- Takes ownership and “forgets” about the value without running its destructor.
- min_
align_ of Deprecated - Returns the ABI-required minimum alignment of a type in bytes.
- min_
align_ of_ val Deprecated - Returns the ABI-required minimum alignment of the type of the value that
val
points to in bytes. - needs_
drop - Returns
true
if dropping values of typeT
matters. - replace
- Moves
src
into the referenceddest
, returning the previousdest
value. - size_of
- Returns the size of a type in bytes.
- size_
of_ val - Returns the size of the pointed-to value in bytes.
- swap
- Swaps the values at two mutable locations, without deinitializing either one.
- take
- Replaces
dest
with the default value ofT
, returning the previousdest
value. - transmute⚠
- Reinterprets the bits of a value of one type as another type.
- transmute_
copy ⚠ - Interprets
src
as having type&Dst
, and then readssrc
without moving the contained value. - uninitialized⚠
Deprecated - Bypasses Rust’s normal memory-initialization checks by pretending to
produce a value of type
T
, while doing nothing at all. - zeroed⚠
- Returns the value of type
T
represented by the all-zero byte-pattern. - align_
of_ ⚠val_ raw Experimental - Returns the ABI-required minimum alignment of the type of the value that
val
points to in bytes. - copy
Experimental - Bitwise-copies a value.
- forget_
unsized Experimental - Like
forget
, but also accepts unsized values. - size_
of_ ⚠val_ raw Experimental - Returns the size of the pointed-to value in bytes.
- variant_
count Experimental - Returns the number of variants in the enum type
T
.
Unions§
- Maybe
Uninit - A wrapper type to construct uninitialized instances of
T
.