Module std::mem1.0.0 [] [src]

Basic functions for dealing with memory.

This module contains functions for querying the size and alignment of types, initializing and manipulating memory.

Structs

Discriminant

Opaque type representing the discriminant of an enum.

Pin [
Experimental
]

A pinned reference.

Functions

align_of

Returns the ABI-required minimum alignment of a type.

align_of_val

Returns the ABI-required minimum alignment of the type of the value that val points to.

discriminant

Returns a value uniquely identifying the enum variant in v.

drop

Disposes of a value.

forget

Leaks a value: takes ownership and "forgets" about the value without running its destructor.

min_align_of [
Deprecated
]

Returns the ABI-required minimum alignment of a type.

min_align_of_val [
Deprecated
]

Returns the ABI-required minimum alignment of the type of the value that val points to.

needs_drop

Returns whether dropping values of type T matters.

replace

Replaces the value at a mutable location with a new one, returning the old value, without deinitializing either one.

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.

transmute

Reinterprets the bits of a value of one type as another type.

transmute_copy

Interprets src as having type &U, and then reads src without moving the contained value.

uninitialized

Bypasses Rust's normal memory-initialization checks by pretending to produce a value of type T, while doing nothing at all.

zeroed

Creates a value whose bytes are all zero.

unreachable [
Experimental
]

Tells LLVM that this point in the code is not reachable, enabling further optimizations.

Unions

ManuallyDrop

A wrapper to inhibit compiler from automatically calling T’s destructor.