pub trait Uring: Sealed {
type A;
type B;
type Ext;
// Required methods
fn header(&self) -> &Header<Self::Ext>;
fn sender(&self) -> Queue<'_, Self::A>;
fn receiver(&self) -> Queue<'_, Self::B>;
// Provided methods
fn ext(&self) -> &Self::Ext
where Self::Ext: Sync { ... }
fn is_connected(&self) -> bool { ... }
fn send(&mut self, val: Self::A) -> Result<(), Self::A> { ... }
fn send_bulk<I>(&mut self, vals: I) -> usize
where I: Iterator<Item = Self::A> { ... }
fn recv(&mut self) -> Option<Self::B> { ... }
fn recv_bulk(&mut self) -> Drain<'_, Self::B> ⓘ { ... }
}
Required Associated Types§
Required Methods§
fn header(&self) -> &Header<Self::Ext>
fn sender(&self) -> Queue<'_, Self::A>
fn receiver(&self) -> Queue<'_, Self::B>
Provided Methods§
fn ext(&self) -> &Self::Ext
Sourcefn is_connected(&self) -> bool
fn is_connected(&self) -> bool
Returns true
if the remote Uring
is not dropped.
fn send(&mut self, val: Self::A) -> Result<(), Self::A>
fn send_bulk<I>(&mut self, vals: I) -> usize
fn recv(&mut self) -> Option<Self::B>
fn recv_bulk(&mut self) -> Drain<'_, Self::B> ⓘ
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.