pub trait ArrayAtomHeader: Sized {
type InitializationParameter: ?Sized;
// Required method
unsafe fn initialize<'a, W, T>(
writer: &mut W,
parameter: &Self::InitializationParameter,
urids: &mut CachedMap,
) -> Result<(), ()>
where T: 'static + Sized + Copy,
ArrayAtomBody<Self, T>: AtomBody,
W: WritingFrame<'a> + WritingFrameExt<'a, ArrayAtomBody<Self, T>>;
}Expand description
A header of an ArrayAtomBody.
Many atoms have an additional body header and this trait represents said headers.
Required Associated Types§
Sourcetype InitializationParameter: ?Sized
type InitializationParameter: ?Sized
Type of the parameter for initialize.
Required Methods§
Sourceunsafe fn initialize<'a, W, T>(
writer: &mut W,
parameter: &Self::InitializationParameter,
urids: &mut CachedMap,
) -> Result<(), ()>where
T: 'static + Sized + Copy,
ArrayAtomBody<Self, T>: AtomBody,
W: WritingFrame<'a> + WritingFrameExt<'a, ArrayAtomBody<Self, T>>,
unsafe fn initialize<'a, W, T>(
writer: &mut W,
parameter: &Self::InitializationParameter,
urids: &mut CachedMap,
) -> Result<(), ()>where
T: 'static + Sized + Copy,
ArrayAtomBody<Self, T>: AtomBody,
W: WritingFrame<'a> + WritingFrameExt<'a, ArrayAtomBody<Self, T>>,
Write out the array atom header.
The same rules from
AtomBody::initialize_body apply.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.