Struct r3::hunk::HunkDefiner
source · pub struct HunkDefiner<System, T, InitTag>where
T: ?Sized,{ /* private fields */ }
Expand description
The definer (static builder) for Hunk
.
InitTag
is either DefaultInitTag
or ZeroInitTag
.
Implementations§
source§impl<System, T, InitTag> HunkDefiner<System, T, InitTag>where
System: KernelBase + KernelStatic<System>,
T: ?Sized,
impl<System, T, InitTag> HunkDefiner<System, T, InitTag>where System: KernelBase + KernelStatic<System>, T: ?Sized,
sourcepub const fn len(self, len: usize) -> HunkDefiner<System, T, InitTag>
pub const fn len(self, len: usize) -> HunkDefiner<System, T, InitTag>
Specify the element count. Defaults to 1
. Must be 1
for a non-array
hunk.
sourcepub const fn align(self, align: usize) -> HunkDefiner<System, T, InitTag>
pub const fn align(self, align: usize) -> HunkDefiner<System, T, InitTag>
Specify the minimum alignment. Defaults to 1
.
sourcepub const fn zeroed(self) -> HunkDefiner<System, T, ZeroInitTag>where
T: Zeroable,
pub const fn zeroed(self) -> HunkDefiner<System, T, ZeroInitTag>where T: Zeroable,
Zero-initialize the hunk.
sourcepub const unsafe fn zeroed_unchecked(
self
) -> HunkDefiner<System, T, ZeroInitTag>
pub const unsafe fn zeroed_unchecked( self ) -> HunkDefiner<System, T, ZeroInitTag>
Zero-initialize the hunk even if it might be unsafe.
Safety
If zero initialization is not a valid bit pattern for T
, accessing the
hunk’s contents may result in an undefined behavior.