1use std::sync::atomic::{
2 AtomicI8, AtomicI16, AtomicI32, AtomicI64, AtomicU8, AtomicU16, AtomicU32, AtomicU64,
3};
4
5pub trait AtomicInt {
6 type Atomic;
7}
8
9impl AtomicInt for i8 {
10 type Atomic = AtomicI8;
11}
12impl AtomicInt for i16 {
13 type Atomic = AtomicI16;
14}
15impl AtomicInt for i32 {
16 type Atomic = AtomicI32;
17}
18impl AtomicInt for i64 {
19 type Atomic = AtomicI64;
20}
21impl AtomicInt for u8 {
22 type Atomic = AtomicU8;
23}
24impl AtomicInt for u16 {
25 type Atomic = AtomicU16;
26}
27impl AtomicInt for u32 {
28 type Atomic = AtomicU32;
29}
30impl AtomicInt for u64 {
31 type Atomic = AtomicU64;
32}