1use super::*;
2
3impl ToU8 for u16 {
4 fn to_u8(self) -> u8 {
5 if self & 0xff00 != 0 {
6 u8::MAX
7 } else {
8 self as u8
9 }
10 }
11}
12impl AsU16 for u16 {
13 fn as_u16(self) -> u16 {
14 self
15 }
16}
17impl AsU32 for u16 {
18 fn as_u32(self) -> u32 {
19 self.into()
20 }
21}
22impl AsU64 for u16 {
23 fn as_u64(self) -> u64 {
24 self.into()
25 }
26}
27impl AsU128 for u16 {
28 fn as_u128(self) -> u128 {
29 self.into()
30 }
31}
32
33impl ToI8 for u16 {
34 fn to_i8(self) -> i8 {
35 if self & 0xff80 != 0 {
36 i8::MAX
37 } else {
38 self as i8
39 }
40 }
41}
42impl AsI16 for u16 {
43 fn as_i16(self) -> i16 {
44 if self & 0x8000 != 0 {
45 i16::MAX
46 } else {
47 self as i16
48 }
49 }
50}
51impl AsI32 for u16 {
52 fn as_i32(self) -> i32 {
53 self.into()
54 }
55}
56impl AsI64 for u16 {
57 fn as_i64(self) -> i64 {
58 self.into()
59 }
60}
61impl AsI128 for u16 {
62 fn as_i128(self) -> i128 {
63 self.into()
64 }
65}
66
67impl AsF32 for u16 {
68 fn as_f32(self) -> f32 {
69 self.into()
70 }
71}
72impl AsF64 for u16 {
73 fn as_f64(self) -> f64 {
74 self.into()
75 }
76}