use std::sync::Arc;
use std::sync::atomic::{self, AtomicBool};
use std::task::Wake;
pub(crate) struct TestWaker {
pub(crate) awakened: AtomicBool,
}
impl TestWaker {
pub(crate) fn new() -> Self {
Self {
awakened: AtomicBool::new(false),
}
}
}
impl Wake for TestWaker {
fn wake(self: Arc<Self>) {
self.awakened.store(true, atomic::Ordering::Relaxed);
}
}