#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct SyncTelemetrySnapshot {
pub primitive_id: u64,
pub primitive_kind: &'static str,
pub capacity: usize,
pub occupied_units: usize,
pub available_units: usize,
pub waiter_count: usize,
pub generation: u64,
pub state: &'static str,
pub cancellation_count: u64,
pub closed: bool,
}
mod barrier;
mod contended_mutex;
#[cfg(test)]
mod cross_module_lock_ordering_test;
pub mod lock_ordering;
mod lock_ordering_test;
mod mutex;
mod notify;
#[cfg(test)]
mod notify_bug_test;
#[cfg(test)]
mod notify_metamorphic;
mod once_cell;
#[cfg(test)]
mod once_cell_metamorphic;
mod pool;
#[cfg(test)]
mod pool_metamorphic_tests;
mod rwlock;
#[cfg(test)]
mod rwlock_lost_wakeup_test;
#[cfg(test)]
mod scope_cancellation_metamorphic;
pub mod semaphore;
#[cfg(test)]
mod semaphore_metamorphic_tests;
mod waiter;
pub use barrier::{Barrier, BarrierWaitError, BarrierWaitResult};
pub use contended_mutex::{ContendedMutex, ContendedMutexGuard, LockMetricsSnapshot};
pub use mutex::{LockError, Mutex, MutexGuard, OwnedMutexGuard, TryLockError};
pub use notify::{Notified, Notify};
pub use once_cell::{OnceCell, OnceCellError};
pub use pool::{
AsyncResourceFactory, DestroyReason, GenericPool, Pool, PoolConfig, PoolError, PoolFuture,
PoolReturn, PoolReturnReceiver, PoolReturnSender, PoolStats, PooledResource, WarmupStrategy,
};
#[cfg(feature = "metrics")]
pub use pool::{PoolMetrics, PoolMetricsHandle, PoolMetricsState};
pub use rwlock::{
OwnedRwLockReadGuard, OwnedRwLockWriteGuard, RwLock, RwLockError, RwLockReadGuard,
RwLockWriteGuard, TryReadError, TryWriteError,
};
pub use semaphore::{
AcquireError, OwnedSemaphorePermit, Semaphore, SemaphorePermit, TryAcquireError,
};
#[cfg(test)]
mod barrier_metamorphic;
#[cfg(test)]
mod mock_code_finder_clean_sweep_audit_test;
#[cfg(test)]
mod mutex_deadlock_test;
#[cfg(test)]
mod mutex_metamorphic;