pub struct WindowDescriptor {
pub start_slot: u32,
pub tenant_id: u32,
pub opcode: SlotOpcode,
pub ticket: u32,
pub required: Vec<Vec<u32>>,
pub lookahead: Vec<Vec<u32>>,
}Expand description
A ticketed window of related slot publications.
Each emitted slot receives a stable prefix of [window_ticket, class_tag]
followed by the caller-supplied payload, so wrappers can submit required and
lookahead work as one structured batch without hand-assembling the prefix.
Fields§
§start_slot: u32Slot index where the first window item should be written.
tenant_id: u32Tenant id used for all emitted slots.
opcode: SlotOpcodeSlot opcode shared by all emitted slots.
ticket: u32Stable ticket id correlating every slot in this window.
required: Vec<Vec<u32>>Required entries for the window.
lookahead: Vec<Vec<u32>>Lookahead entries for the window.
Implementations§
Source§impl WindowDescriptor
impl WindowDescriptor
Sourcepub fn new(
start_slot: u32,
tenant_id: u32,
opcode: SlotOpcode,
ticket: u32,
required: Vec<Vec<u32>>,
lookahead: Vec<Vec<u32>>,
) -> Self
pub fn new( start_slot: u32, tenant_id: u32, opcode: SlotOpcode, ticket: u32, required: Vec<Vec<u32>>, lookahead: Vec<Vec<u32>>, ) -> Self
Convenience constructor.
Sourcepub fn into_batch(&self) -> BatchDescriptor
pub fn into_batch(&self) -> BatchDescriptor
Convert the window into a typed batch publication.
Sourcepub fn try_into_batch(&self) -> Result<BatchDescriptor, PipelineError>
pub fn try_into_batch(&self) -> Result<BatchDescriptor, PipelineError>
Convert the window into a typed batch publication with explicit staging and ABI-bound errors.
Sourcepub fn publish_into(&self, ring_bytes: &mut [u8]) -> Result<u32, PipelineError>
pub fn publish_into(&self, ring_bytes: &mut [u8]) -> Result<u32, PipelineError>
Publish the full window into the ring and return the number of emitted slots.
Trait Implementations§
Source§impl Clone for WindowDescriptor
impl Clone for WindowDescriptor
Source§fn clone(&self) -> WindowDescriptor
fn clone(&self) -> WindowDescriptor
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WindowDescriptor
impl Debug for WindowDescriptor
impl Eq for WindowDescriptor
Source§impl PartialEq for WindowDescriptor
impl PartialEq for WindowDescriptor
Source§fn eq(&self, other: &WindowDescriptor) -> bool
fn eq(&self, other: &WindowDescriptor) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for WindowDescriptor
Auto Trait Implementations§
impl Freeze for WindowDescriptor
impl RefUnwindSafe for WindowDescriptor
impl Send for WindowDescriptor
impl Sync for WindowDescriptor
impl Unpin for WindowDescriptor
impl UnsafeUnpin for WindowDescriptor
impl UnwindSafe for WindowDescriptor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.