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

Trait UZeroCopyUninitTransport

Source
pub trait UZeroCopyUninitTransport: UZeroCopyTransport + Sealed {
    type UninitTx: UUninitTxBuffer<Initialized = Self::Tx> + Send;

    // Required method
    fn loan_uninit_tx<'life0, 'async_trait>(
        &'life0 self,
        spec: UTxLoanSpec,
    ) -> Pin<Box<dyn Future<Output = Result<Self::UninitTx, UStatus>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Role: called by users to obtain uninitialized loans; transports implement UZeroCopyUninitTransportImpl — see the trait map.

Optional zero-copy capability for transports that can expose uninitialized TX payload storage.

Required Associated Types§

Source

type UninitTx: UUninitTxBuffer<Initialized = Self::Tx> + Send

Transport-specific uninitialized transmit loan type.

Required Methods§

Source

fn loan_uninit_tx<'life0, 'async_trait>( &'life0 self, spec: UTxLoanSpec, ) -> Pin<Box<dyn Future<Output = Result<Self::UninitTx, UStatus>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Reserves uninitialized transmit storage for a validated frame loan spec.

Implementors§