//! Synchronization primitives mod cancellation_token; pub use cancellation_token::{ guard::DropGuard, guard_ref::DropGuardRef, CancellationToken, WaitForCancellationFuture, WaitForCancellationFutureOwned, }; pub(crate) use cancellation_token::{RunUntilCancelledFuture, RunUntilCancelledFutureOwned}; mod mpsc; pub use mpsc::{PollSendError, PollSender}; mod poll_semaphore; pub use poll_semaphore::PollSemaphore; mod reusable_box; pub use reusable_box::ReusableBoxFuture; #[cfg(test)] mod tests;