pub struct ResolvedCmd {
pub txn_kind: TxnKind,
pub route: Route,
pub is_quit: bool,
pub is_write: bool,
pub block_hint: BlockHint,
pub wake_idx: Option<u8>,
}Expand description
Per-command verb-resolution result. Produced once by Commands::resolve
in the reactor’s parse-then-dispatch loop, reused for routing decisions,
AOF logging, and the QUIT branch — so the per-cmd upper_verb cost goes
from 4× down to 1×.
Fields§
§txn_kind: TxnKind§route: Route§is_quit: bool§is_write: bool§block_hint: BlockHintBlocking-command classification (see Commands::block_hint).
BlockHint::None for every non-blocking verb.
wake_idx: Option<u8>Index into args whose write may wake a BLPOP / XREAD BLOCK
waiter parked on that key — Some(1) for LPUSH / RPUSH /
XADD, None for every other command (including reads). The
dispatcher’s wake hook is gated on both this being Some and
the per-shard BlockedClients registry being non-empty, so the
steady-state cost when nobody is parked is one is_empty() check.
Auto Trait Implementations§
impl Freeze for ResolvedCmd
impl RefUnwindSafe for ResolvedCmd
impl Send for ResolvedCmd
impl Sync for ResolvedCmd
impl Unpin for ResolvedCmd
impl UnsafeUnpin for ResolvedCmd
impl UnwindSafe for ResolvedCmd
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