Skip to main content

InboxEntry

Struct InboxEntry 

Source
#[repr(C)]
pub struct InboxEntry { pub len: AtomicUsize, pub seq: AtomicUsize, pub overflow: AtomicBool, }
Expand description

One ring entry’s bookkeeping: how many bytes of its slot are valid, the reply-correlation token the backend replies against, and whether the request that arrived was larger than the slot.

Per ENTRY, whatever storage the ring is over, and never inline in the per-queryable header – that is the split W1 made and the reason a family can size its own ring without the backend’s table growing a variant.

Fields§

§len: AtomicUsize

Valid bytes in this entry’s slot.

§seq: AtomicUsize

Reply-correlation token. What it means is the backend’s business (the zenoh shim stores a reply-slot index); the ring only carries it from the producer to the consumer.

§overflow: AtomicBool

Set when the incoming request exceeded slot_bytes. The payload is then skipped and the consumer reports it, rather than the ring truncating a request into a well-formed-looking short one.

Implementations§

Source§

impl InboxEntry

Source

pub const fn new() -> Self

A free entry.

Trait Implementations§

Source§

impl Default for InboxEntry

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.