#[non_exhaustive]pub enum HandleKind {
Fresh,
Resumed,
Suspended,
}Expand description
Lifecycle kind carried inside a Handle. Backends validate kind
on entry to each op and return EngineError::State on mismatch.
Replaces round-1’s compile-time Handle / ResumeHandle /
SuspendToken type split (RFC-012 §4.1).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Fresh
Fresh claim — returned by claim / claim_from_grant.
Resumed
Resumed from reclaim — returned by claim_from_reclaim.
Suspended
Suspended — returned by suspend. Terminal for the lease;
resumption mints a new Handle via claim_from_reclaim.
Trait Implementations§
Source§impl Clone for HandleKind
impl Clone for HandleKind
Source§fn clone(&self) -> HandleKind
fn clone(&self) -> HandleKind
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HandleKind
impl Debug for HandleKind
Source§impl Hash for HandleKind
impl Hash for HandleKind
Source§impl PartialEq for HandleKind
impl PartialEq for HandleKind
impl Copy for HandleKind
impl Eq for HandleKind
impl StructuralPartialEq for HandleKind
Auto Trait Implementations§
impl Freeze for HandleKind
impl RefUnwindSafe for HandleKind
impl Send for HandleKind
impl Sync for HandleKind
impl Unpin for HandleKind
impl UnsafeUnpin for HandleKind
impl UnwindSafe for HandleKind
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