Skip to main content

Producer

Trait Producer 

Source
pub trait Producer:
    Close
    + Select
    + Sized {
    type Layout: Receive;
    type Context: Context;
    type Entry: Copy;
    type Error: Open<Context = Self::Context, Cleanup = <Self::Context as Context>::Cleanup>;

    // Required methods
    fn new(context: &Self::Context) -> Result<Self, Self::Error>;
    fn flush(&mut self);
    fn layout(&self) -> Self::Layout;
    fn registration(&self) -> (NonNull<Self::Entry>, NonZero<u16>);
}
Expand description

Native ring entries and deferred publication, paired with one payload owner.

Required Associated Types§

Source

type Layout: Receive

Source

type Context: Context

Source

type Entry: Copy

Source

type Error: Open<Context = Self::Context, Cleanup = <Self::Context as Context>::Cleanup>

Required Methods§

Source

fn new(context: &Self::Context) -> Result<Self, Self::Error>

Source

fn flush(&mut self)

Source

fn layout(&self) -> Self::Layout

Source

fn registration(&self) -> (NonNull<Self::Entry>, NonZero<u16>)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§