pub struct ExplicitReleaseError { /* private fields */ }Expand description
Explicit release failure that preserves allocation metadata and pins.
Two dispositions share this type:
- Unchanged — the failure happened before any device mutation, and
into_partsreturns the exact live allocation. - Quarantined — the release was prepared and the allocator did not
complete it.
outcomecarries the structured accounting and residual facts, and the returned metadata is provably dead because its generation record was already retired.
Implementations§
Source§impl ExplicitReleaseError
impl ExplicitReleaseError
pub const fn error(&self) -> &BindingError
Sourcepub fn outcome(&self) -> Option<&AllocationReleaseOutcome>
pub fn outcome(&self) -> Option<&AllocationReleaseOutcome>
The structured outcome, when the allocator was actually invoked.
None means nothing was mutated and the allocation is still live.
Sourcepub const fn is_quarantined(&self) -> bool
pub const fn is_quarantined(&self) -> bool
Whether the allocation’s ownership was retained after preparation.
Sourcepub fn state(&self) -> AllocationReleaseState
pub fn state(&self) -> AllocationReleaseState
The lifecycle state the allocation was left in.
pub fn into_parts(self) -> (BindingError, BoundAllocation)
Trait Implementations§
Source§impl Debug for ExplicitReleaseError
impl Debug for ExplicitReleaseError
Source§impl Display for ExplicitReleaseError
impl Display for ExplicitReleaseError
Source§impl Error for ExplicitReleaseError
impl Error for ExplicitReleaseError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl !RefUnwindSafe for ExplicitReleaseError
impl !UnwindSafe for ExplicitReleaseError
impl Freeze for ExplicitReleaseError
impl Send for ExplicitReleaseError
impl Sync for ExplicitReleaseError
impl Unpin for ExplicitReleaseError
impl UnsafeUnpin for ExplicitReleaseError
Blanket Implementations§
impl<T> BindingResource for T
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