1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
use core::num::Wrapping;

use super::Num;

pub trait Unsigned: Num {}

impl Unsigned for u8 {}
impl Unsigned for u16 {}
impl Unsigned for u32 {}
impl Unsigned for u64 {}
impl Unsigned for u128 {}
impl Unsigned for usize {}

impl<T> Unsigned for Wrapping<T>
where
    T: Unsigned,
    Self: Num,
{
}