#[non_exhaustive]pub enum PackLockError {
Io {
path: PathBuf,
source: Error,
},
Busy {
path: PathBuf,
},
}Expand description
Error surfaced by PackLock::open, PackLock::acquire, and
PackLock::try_acquire.
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.
Io
I/O error opening or locking the sidecar file.
Busy
Non-blocking probe returned busy. The blocking path
(PackLock::acquire_async) never produces this for cross-pack
contention — it waits. Emitted by:
PackLock::try_acquireon any contention.PackLock::acquire_asyncon same-process re-entry (a plugin that recurses back into the same pack root). Cross-task contention blocks on the async mutex and never surfaces here.
Trait Implementations§
Source§impl Debug for PackLockError
impl Debug for PackLockError
Source§impl Display for PackLockError
impl Display for PackLockError
Source§impl Error for PackLockError
impl Error for PackLockError
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()
Source§impl From<PackLockError> for PackLockErrorOrCancelled
impl From<PackLockError> for PackLockErrorOrCancelled
Source§fn from(source: PackLockError) -> Self
fn from(source: PackLockError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for PackLockError
impl !RefUnwindSafe for PackLockError
impl Send for PackLockError
impl Sync for PackLockError
impl Unpin for PackLockError
impl UnsafeUnpin for PackLockError
impl !UnwindSafe for PackLockError
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