compact-waitgroup 0.3.4

A compact asynchronous WaitGroup synchronization primitive.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#![cfg(not(loom))]

use core::panic::{RefUnwindSafe, UnwindSafe};

use static_assertions::{assert_impl_all, assert_not_impl_any};

use crate::{GroupToken, MonoGroupToken, MonoWaitGroup, WaitGroup};

assert_impl_all!(WaitGroup: Sync, Send, UnwindSafe, RefUnwindSafe);
assert_impl_all!(GroupToken: Sync, Send, UnwindSafe, RefUnwindSafe, Clone);
assert_impl_all!(MonoWaitGroup: Sync, Send, UnwindSafe, RefUnwindSafe);
assert_impl_all!(MonoGroupToken: Sync, Send, UnwindSafe, RefUnwindSafe);

assert_not_impl_any!(WaitGroup: Clone);
assert_not_impl_any!(MonoGroupToken: Clone);
assert_not_impl_any!(MonoWaitGroup: Clone);