pub struct ExecutorSizing {
pub cbs: usize,
pub sc: usize,
pub arena: usize,
pub nodes: usize,
}Expand description
Per-entry executor sizing — the entity counts an Executor
is built to hold. Public + non-generic (the “C/C++ is a thin wrapper”
principle): the entry / macro / FFI supplies these as plain usizes rather
than as type/const generics C can’t name. Used to size + carve the backing.
cbs is capped at 64 by the executor’s u64 ready-set bitmask (asserted in
[carve]-time / open_in).
Fields§
§cbs: usizeCallback-table slots (entries, the per-entry SC bindings, and the
per-callback-group sched table). ≤ 64.
sc: usizeScheduling-context slots (sched_contexts + sporadic state tables).
arena: usizeBump-allocator arena size in bytes.
nodes: usizephase-409 — Node slots. One worst-case extra session, extra-session id,
node-sched binding, dispatch slot, component slot and callback-group
filter entry per Node, so ONE count covers all seven tables (that is the
upper bound each of them already assumed under MAX_NODES).
Implementations§
Source§impl ExecutorSizing
impl ExecutorSizing
Sourcepub const DEFAULT: ExecutorSizing
pub const DEFAULT: ExecutorSizing
The build-time default (MAX_CBS/MAX_SC/ARENA_SIZE/MAX_NODES
consts) — the backward-compatible size the alloc convenience
constructors leak.
Sourcepub const fn u64_len(&self) -> usize
pub const fn u64_len(&self) -> usize
u64 words a backing must hold for this sizing (see
executor_storage_u64_len).
Trait Implementations§
Source§impl Clone for ExecutorSizing
impl Clone for ExecutorSizing
Source§fn clone(&self) -> ExecutorSizing
fn clone(&self) -> ExecutorSizing
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more