pub struct CommandGuard { /* private fields */ }Expand description
RAII guard that decrements the backend’s pending command count on drop.
Prevents TUI in-flight count drift when error paths forget to call complete_command().
On success paths, call CommandGuard::complete to explicitly finalize.
On error/early-return paths, Drop handles cleanup automatically.
Implementations§
Source§impl CommandGuard
impl CommandGuard
Sourcepub const fn new(router: Arc<BackendSelector>, backend_id: BackendId) -> Self
pub const fn new(router: Arc<BackendSelector>, backend_id: BackendId) -> Self
Create a new guard that will call complete_command on drop.
Sourcepub const fn backend_id(&self) -> BackendId
pub const fn backend_id(&self) -> BackendId
Get the backend ID this guard is protecting.
Trait Implementations§
Source§impl Drop for CommandGuard
impl Drop for CommandGuard
Auto Trait Implementations§
impl !RefUnwindSafe for CommandGuard
impl !UnwindSafe for CommandGuard
impl Freeze for CommandGuard
impl Send for CommandGuard
impl Sync for CommandGuard
impl Unpin for CommandGuard
impl UnsafeUnpin for CommandGuard
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
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more