File tree Expand file tree Collapse file tree 2 files changed +22
-1
lines changed Expand file tree Collapse file tree 2 files changed +22
-1
lines changed Original file line number Diff line number Diff line change 1
1
---
2
- refs/heads/master: 161a82e433fbfbc0bd57a4d951ac37656a8a30f6
2
+ refs/heads/master: 5792244d03149fafdf65fc1bbc05b24323fbfa1a
3
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
4
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
5
5
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be
Original file line number Diff line number Diff line change 8
8
* type.
9
9
*/
10
10
11
+ use cmp:: Eq ;
12
+
11
13
/// The option type
12
14
enum Option < T > {
13
15
None ,
@@ -247,6 +249,25 @@ impl<T: copy> Option<T> {
247
249
pure fn while_some ( blk : fn ( +T ) -> Option < T > ) { while_some ( self , blk) }
248
250
}
249
251
252
+ impl < T : Eq > Option < T > : Eq {
253
+ pure fn eq ( & & other: Option < T > ) -> bool {
254
+ match self {
255
+ None => {
256
+ match other {
257
+ None => true ,
258
+ Some ( _) => false
259
+ }
260
+ }
261
+ Some ( self_contents) => {
262
+ match other {
263
+ None => false ,
264
+ Some ( other_contents) => self_contents. eq ( other_contents)
265
+ }
266
+ }
267
+ }
268
+ }
269
+ }
270
+
250
271
#[ test]
251
272
fn test_unwrap_ptr ( ) {
252
273
let x = ~0 ;
You can’t perform that action at this time.
0 commit comments