monostate/
partial_eq.rs

1use crate::string::ConstStr;
2
3impl<const V: char, const W: char> PartialEq<crate::MustBeChar<W>> for crate::MustBeChar<V> {
4    fn eq(&self, _: &crate::MustBeChar<W>) -> bool {
5        V == W
6    }
7}
8
9impl<const V: u128, const W: u128> PartialEq<crate::MustBePosInt<W>> for crate::MustBePosInt<V> {
10    fn eq(&self, _: &crate::MustBePosInt<W>) -> bool {
11        V == W
12    }
13}
14
15impl<const V: i128, const W: i128> PartialEq<crate::MustBeNegInt<W>> for crate::MustBeNegInt<V> {
16    fn eq(&self, _: &crate::MustBeNegInt<W>) -> bool {
17        V == W
18    }
19}
20
21impl<const V: u8, const W: u8> PartialEq<crate::MustBeU8<W>> for crate::MustBeU8<V> {
22    fn eq(&self, _: &crate::MustBeU8<W>) -> bool {
23        V == W
24    }
25}
26
27impl<const V: u16, const W: u16> PartialEq<crate::MustBeU16<W>> for crate::MustBeU16<V> {
28    fn eq(&self, _: &crate::MustBeU16<W>) -> bool {
29        V == W
30    }
31}
32
33impl<const V: u32, const W: u32> PartialEq<crate::MustBeU32<W>> for crate::MustBeU32<V> {
34    fn eq(&self, _: &crate::MustBeU32<W>) -> bool {
35        V == W
36    }
37}
38
39impl<const V: u64, const W: u64> PartialEq<crate::MustBeU64<W>> for crate::MustBeU64<V> {
40    fn eq(&self, _: &crate::MustBeU64<W>) -> bool {
41        V == W
42    }
43}
44
45impl<const V: u128, const W: u128> PartialEq<crate::MustBeU128<W>> for crate::MustBeU128<V> {
46    fn eq(&self, _: &crate::MustBeU128<W>) -> bool {
47        V == W
48    }
49}
50
51impl<const V: i8, const W: i8> PartialEq<crate::MustBeI8<W>> for crate::MustBeI8<V> {
52    fn eq(&self, _: &crate::MustBeI8<W>) -> bool {
53        V == W
54    }
55}
56
57impl<const V: i16, const W: i16> PartialEq<crate::MustBeI16<W>> for crate::MustBeI16<V> {
58    fn eq(&self, _: &crate::MustBeI16<W>) -> bool {
59        V == W
60    }
61}
62
63impl<const V: i32, const W: i32> PartialEq<crate::MustBeI32<W>> for crate::MustBeI32<V> {
64    fn eq(&self, _: &crate::MustBeI32<W>) -> bool {
65        V == W
66    }
67}
68
69impl<const V: i64, const W: i64> PartialEq<crate::MustBeI64<W>> for crate::MustBeI64<V> {
70    fn eq(&self, _: &crate::MustBeI64<W>) -> bool {
71        V == W
72    }
73}
74
75impl<const V: i128, const W: i128> PartialEq<crate::MustBeI128<W>> for crate::MustBeI128<V> {
76    fn eq(&self, _: &crate::MustBeI128<W>) -> bool {
77        V == W
78    }
79}
80
81impl<const V: bool, const W: bool> PartialEq<crate::MustBeBool<W>> for crate::MustBeBool<V> {
82    fn eq(&self, _: &crate::MustBeBool<W>) -> bool {
83        V == W
84    }
85}
86
87impl<V, W> PartialEq<crate::MustBeStr<W>> for crate::MustBeStr<V>
88where
89    V: ConstStr,
90    W: ConstStr,
91{
92    fn eq(&self, _: &crate::MustBeStr<W>) -> bool {
93        V::VALUE == W::VALUE
94    }
95}