pub struct IdAllocator {
pub next_exec_id: u64,
pub next_command_id: u64,
pub next_node_site_id: u64,
}Expand description
Monotonic per-Node ID source. Single-threaded reads/writes so the ingress queue stays the only cross-thread sync primitive.
OpRef has no counter - it packs (graph_idx, node_idx)
positionally at install time; see crate::ids::OpRef::pack.
Fields§
§next_exec_id: u64Source of fresh ExecIds minted at every entry point.
next_command_id: u64Source of fresh CommandIds for async dispatch suspensions.
next_node_site_id: u64Source of fresh NodeSiteIds for graph installation.
Trait Implementations§
Source§impl Default for IdAllocator
impl Default for IdAllocator
Source§fn default() -> IdAllocator
fn default() -> IdAllocator
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for IdAllocator
impl RefUnwindSafe for IdAllocator
impl Send for IdAllocator
impl Sync for IdAllocator
impl Unpin for IdAllocator
impl UnsafeUnpin for IdAllocator
impl UnwindSafe for IdAllocator
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedComponent for T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request