Module scale_info::prelude::mem
1.0.0 · source · Expand description
Basic functions for dealing with memory.
This module contains functions for querying the size and alignment of types, initializing and manipulating memory.
Structs
AssumeExperimental
What transmutation safety conditions shall the compiler assume that you are checking?
Opaque type representing the discriminant of an enum.
A wrapper to inhibit compiler from automatically calling
T
’s destructor.
This wrapper is 0-cost.Traits
BikeshedIntrinsicFromExperimental
Are values of a type transmutable into values of another type?
Functions
align_of_val_raw⚠Experimental
Returns the ABI-required minimum alignment of the type of the value that
val
points to in
bytes.copyExperimental
Bitwise-copies a value.
forget_unsizedExperimental
Like
forget
, but also accepts unsized values.size_of_val_raw⚠Experimental
Returns the size of the pointed-to value in bytes.
variant_countExperimental
Returns the number of variants in the enum type
T
.Returns the ABI-required minimum alignment of the type of the value that
val
points to in
bytes.Returns a value uniquely identifying the enum variant in
v
.Disposes of a value.
Takes ownership and “forgets” about the value without running its destructor.
min_align_ofDeprecated
Returns the ABI-required minimum alignment of a type in bytes.
min_align_of_valDeprecated
Returns the ABI-required minimum alignment of the type of the value that
val
points to in
bytes.Returns
true
if dropping values of type T
matters.Moves
src
into the referenced dest
, returning the previous dest
value.Returns the size of a type in bytes.
Returns the size of the pointed-to value in bytes.
Swaps the values at two mutable locations, without deinitializing either one.
Replaces
dest
with the default value of T
, returning the previous dest
value.Reinterprets the bits of a value of one type as another type.
Interprets
src
as having type &Dst
, and then reads src
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.Returns the value of type
T
represented by the all-zero byte-pattern.Unions
A wrapper type to construct uninitialized instances of
T
.