11library ;
22
33use :: data_structures :: {SomeEnum , SomeStruct };
4- use core :: ops :: Eq ;
54
6- impl Eq for (u32 , u32 ) {
5+ impl PartialEq for (u32 , u32 ) {
76 fn eq (self , other : Self ) -> bool {
87 self . 0 == other . 0 && self . 1 == other . 1
98 }
109}
10+ impl Eq for (u32 , u32 ) {}
1111
12- impl Eq for SomeEnum <u32 > {
12+ impl PartialEq for SomeEnum <u32 > {
1313 fn eq (self , other : Self ) -> bool {
1414 match self {
1515 SomeEnum :: a (val ) => {
@@ -22,8 +22,9 @@ impl Eq for SomeEnum<u32> {
2222 }
2323 }
2424}
25+ impl Eq for SomeEnum <u32 > {}
2526
26- impl Eq for Vec <u32 > {
27+ impl PartialEq for Vec <u32 > {
2728 fn eq (self , other : Self ) -> bool {
2829 if self . len () != other . len () {
2930 return false ;
@@ -38,14 +39,16 @@ impl Eq for Vec<u32> {
3839 true
3940 }
4041}
42+ impl Eq for Vec <u32 > {}
4143
42- impl Eq for (Vec <u32 >, Vec <u32 >) {
44+ impl PartialEq for (Vec <u32 >, Vec <u32 >) {
4345 fn eq (self , other : Self ) -> bool {
4446 self . 0 == other . 0 && self . 1 == other . 1
4547 }
4648}
49+ impl Eq for (Vec <u32 >, Vec <u32 >) {}
4750
48- impl Eq for Vec <Vec <u32 >> {
51+ impl PartialEq for Vec <Vec <u32 >> {
4952 fn eq (self , other : Self ) -> bool {
5053 if self . len () != other . len () {
5154 return false ;
@@ -60,14 +63,16 @@ impl Eq for Vec<Vec<u32>> {
6063 true
6164 }
6265}
66+ impl Eq for Vec <Vec <u32 >> {}
6367
64- impl Eq for SomeStruct <u32 > {
68+ impl PartialEq for SomeStruct <u32 > {
6569 fn eq (self , other : Self ) -> bool {
6670 self . a == other . a
6771 }
6872}
73+ impl Eq for SomeStruct <u32 > {}
6974
70- impl Eq for [Vec <u32 >; 2 ] {
75+ impl PartialEq for [Vec <u32 >; 2 ] {
7176 fn eq (self , other : Self ) -> bool {
7277 let mut i = 0 ;
7378 while i < 2 {
@@ -79,8 +84,9 @@ impl Eq for [Vec<u32>; 2] {
7984 true
8085 }
8186}
87+ impl Eq for [Vec <u32 >; 2 ] {}
8288
83- impl Eq for Vec <SomeStruct <u32 >> {
89+ impl PartialEq for Vec <SomeStruct <u32 >> {
8490 fn eq (self , other : Self ) -> bool {
8591 if self . len () != other . len () {
8692 return false ;
@@ -95,8 +101,9 @@ impl Eq for Vec<SomeStruct<u32>> {
95101 true
96102 }
97103}
104+ impl Eq for Vec <SomeStruct <u32 >> {}
98105
99- impl Eq for [u64 ; 2 ] {
106+ impl PartialEq for [u64 ; 2 ] {
100107 fn eq (self , other : Self ) -> bool {
101108 let mut i = 0 ;
102109 while i < 2 {
@@ -108,8 +115,9 @@ impl Eq for [u64; 2] {
108115 true
109116 }
110117}
118+ impl Eq for [u64 ; 2 ] {}
111119
112- impl Eq for Vec <[u64 ; 2 ]> {
120+ impl PartialEq for Vec <[u64 ; 2 ]> {
113121 fn eq (self , other : Self ) -> bool {
114122 if self . len () != other . len () {
115123 return false ;
@@ -124,8 +132,9 @@ impl Eq for Vec<[u64; 2]> {
124132 true
125133 }
126134}
135+ impl Eq for Vec <[u64 ; 2 ]> {}
127136
128- impl Eq for SomeEnum <Vec <u32 >> {
137+ impl PartialEq for SomeEnum <Vec <u32 >> {
129138 fn eq (self , other : Self ) -> bool {
130139 match self {
131140 SomeEnum :: a (val ) => {
@@ -138,8 +147,9 @@ impl Eq for SomeEnum<Vec<u32>> {
138147 }
139148 }
140149}
150+ impl Eq for SomeEnum <Vec <u32 >> {}
141151
142- impl Eq for Vec <SomeEnum <u32 >> {
152+ impl PartialEq for Vec <SomeEnum <u32 >> {
143153 fn eq (self , other : Self ) -> bool {
144154 if self . len () != other . len () {
145155 return false ;
@@ -155,8 +165,9 @@ impl Eq for Vec<SomeEnum<u32>> {
155165 true
156166 }
157167}
168+ impl Eq for Vec <SomeEnum <u32 >> {}
158169
159- impl Eq for Vec <(u32 , u32 )> {
170+ impl PartialEq for Vec <(u32 , u32 )> {
160171 fn eq (self , other : Self ) -> bool {
161172 if self . len () != other . len () {
162173 return false ;
@@ -172,14 +183,16 @@ impl Eq for Vec<(u32, u32)> {
172183 true
173184 }
174185}
186+ impl Eq for Vec <(u32 , u32 )> {}
175187
176- impl Eq for SomeStruct <Vec <Vec <u32 >>> {
188+ impl PartialEq for SomeStruct <Vec <Vec <u32 >>> {
177189 fn eq (self , other : Self ) -> bool {
178190 self . a == other . a
179191 }
180192}
193+ impl Eq for SomeStruct <Vec <Vec <u32 >>> {}
181194
182- impl Eq for Vec <SomeStruct <Vec <Vec <u32 >>>> {
195+ impl PartialEq for Vec <SomeStruct <Vec <Vec <u32 >>>> {
183196 fn eq (self , other : Self ) -> bool {
184197 if self . len () != other . len () {
185198 return false ;
@@ -195,3 +208,4 @@ impl Eq for Vec<SomeStruct<Vec<Vec<u32>>>> {
195208 true
196209 }
197210}
211+ impl Eq for Vec <SomeStruct <Vec <Vec <u32 >>>> {}
0 commit comments