Skip to main content

Module init

Module init 

Source

Macros§

init
Construct an in-place initializer for structs.
pin_init
Construct an in-place, pinned initializer for structs.
stack_pin_init
Initialize and pin a type directly on the stack.
stack_try_pin_init
Initialize and pin a type directly on the stack.
try_init
Construct an in-place fallible initializer for structs.
try_pin_init
Construct an in-place, fallible pinned initializer for structs.

Structs§

ChainInit
An initializer returned by Init::chain.
ChainPinInit
An initializer returned by PinInit::pin_chain.

Traits§

Init
An initializer for T.
InitDefault
A trait for types that have a canonical, stack-safe, in-place default initializer.
InitMaybeUninit
An extension trait that allows safe initialization of MaybeUninit<T> memory.
IntoFallibleInit
An extension trait for converting Init<T, Infallible> to a fallible Init<T, E>. Useful when chaining an infallible initializer with a fallible chained initialization function.
PinInit
A pin-initializer for the type T.
PinnedDrop
Trait facilitating pinned destruction.
UnsafeCellInit
An extension trait for retrofitting UnsafeCell with an initializer.
Zeroable
Marker trait for types that can be initialized by writing just zeroes.

Functions§

init_array_from_fn
Initializes an array by initializing each element via the provided initializer.
init_from_closure
Creates a new Init<T, E> from the given closure.
into_init
Convert a closure returning Result<impl Init<T, E>, E> into an Init<T, E>.
pin_init_array_from_fn
Initializes an array by initializing each element via the provided initializer.
pin_init_from_closure
Creates a new PinInit<T, E> from the given closure.
uninit
An initializer that leaves the memory uninitialized.
zeroed
Create a new zeroed T.

Attribute Macros§

pin_data
Used to specify the pinning information of the fields of a struct.
pinned_drop
Used to implement PinnedDrop safely.

Derive Macros§

Zeroable
Derives the Zeroable trait for the given struct.