#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum TryAcquireError {
NoPermits,
Closed,
}
impl core::fmt::Display for TryAcquireError {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
match self {
TryAcquireError::NoPermits => write!(f, "no permits available"),
TryAcquireError::Closed => write!(f, "semaphore closed"),
}
}
}
#[cfg(feature = "std")]
impl std::error::Error for TryAcquireError {}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum AcquireError {
Closed,
}
impl core::fmt::Display for AcquireError {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
match self {
AcquireError::Closed => write!(f, "semaphore closed"),
}
}
}
#[cfg(feature = "std")]
impl std::error::Error for AcquireError {}