Preview of the proposed up-rust native-frame-model branch (up-rust b6b99c6d, up-spec f0e9b17) — not released documentation. branch · write-up

Trait UUninitTxBuffer

Source
pub trait UUninitTxBuffer {
    type Initialized: UTxBuffer;

    // Required methods
    fn metadata(&self) -> &UFrameMetadata;
    fn payload_len(&self) -> usize;
    fn payload_uninit_mut(&mut self) -> &mut [MaybeUninit<u8>];
    unsafe fn assume_payload_init(self) -> Self::Initialized;
}
Expand description

Role: an uninitialized transmit loan; filled safely via the typed init API — see the trait map.

Mutable transmit storage whose application payload bytes are not yet initialized.

Required Associated Types§

Source

type Initialized: UTxBuffer

Initialized transmit loan type produced after payload initialization.

Required Methods§

Source

fn metadata(&self) -> &UFrameMetadata

Returns the immutable frame metadata associated with this transmit loan.

Source

fn payload_len(&self) -> usize

Returns the visible application payload length.

Source

fn payload_uninit_mut(&mut self) -> &mut [MaybeUninit<u8>]

Returns mutable uninitialized application payload storage.

Source

unsafe fn assume_payload_init(self) -> Self::Initialized

Converts this uninitialized loan into its initialized TX buffer form.

§Safety

The caller must guarantee every visible application payload byte has been initialized before conversion.

Implementors§