@@ -42,11 +42,9 @@ use clone::Clone;
42
42
use clone:: DeepClone ;
43
43
use cmp:: { Eq , TotalEq , TotalOrd } ;
44
44
use default:: Default ;
45
- use either;
46
45
use fmt;
47
46
use iter:: { Iterator , DoubleEndedIterator , ExactSize } ;
48
47
use kinds:: Send ;
49
- use num:: Zero ;
50
48
use result:: { IntoResult , ToResult , AsResult } ;
51
49
use result:: { Result , Ok , Err } ;
52
50
use str:: OwnedStr ;
@@ -361,17 +359,6 @@ impl<T: Default> Option<T> {
361
359
}
362
360
}
363
361
364
- impl < T : Zero > Option < T > {
365
- /// Returns the contained value or zero (for this type)
366
- #[ inline]
367
- pub fn unwrap_or_zero ( self ) -> T {
368
- match self {
369
- Some ( x) => x,
370
- None => Zero :: zero ( )
371
- }
372
- }
373
- }
374
-
375
362
/////////////////////////////////////////////////////////////////////////////
376
363
// Constructor extension trait
377
364
/////////////////////////////////////////////////////////////////////////////
@@ -449,26 +436,6 @@ impl<T> AsResult<T, ()> for Option<T> {
449
436
}
450
437
}
451
438
452
- impl < T : Clone > either:: ToEither < ( ) , T > for Option < T > {
453
- #[ inline]
454
- fn to_either ( & self ) -> either:: Either < ( ) , T > {
455
- match * self {
456
- Some ( ref x) => either:: Right ( x. clone ( ) ) ,
457
- None => either:: Left ( ( ) ) ,
458
- }
459
- }
460
- }
461
-
462
- impl < T > either:: IntoEither < ( ) , T > for Option < T > {
463
- #[ inline]
464
- fn into_either ( self ) -> either:: Either < ( ) , T > {
465
- match self {
466
- Some ( x) => either:: Right ( x) ,
467
- None => either:: Left ( ( ) ) ,
468
- }
469
- }
470
- }
471
-
472
439
impl < T : fmt:: Default > fmt:: Default for Option < T > {
473
440
#[ inline]
474
441
fn fmt ( s : & Option < T > , f : & mut fmt:: Formatter ) {
@@ -526,8 +493,6 @@ impl<A> ExactSize<A> for OptionIterator<A> {}
526
493
mod tests {
527
494
use super :: * ;
528
495
529
- use either:: { IntoEither , ToEither } ;
530
- use either;
531
496
use result:: { IntoResult , ToResult } ;
532
497
use result:: { Result , Ok , Err } ;
533
498
use str:: StrSlice ;
@@ -696,14 +661,6 @@ mod tests {
696
661
assert_eq!( x. unwrap_or_else( || 2 ) , 2 ) ;
697
662
}
698
663
699
- #[ test]
700
- fn test_unwrap_or_zero( ) {
701
- let some_stuff = Some ( 42 ) ;
702
- assert_eq!( some_stuff. unwrap_or_zero( ) , 42 ) ;
703
- let no_stuff: Option <int> = None ;
704
- assert_eq!( no_stuff. unwrap_or_zero( ) , 0 ) ;
705
- }
706
-
707
664
#[ test]
708
665
fn test_filtered( ) {
709
666
let some_stuff = Some ( 42 ) ;
@@ -820,22 +777,4 @@ mod tests {
820
777
assert_eq!( some. into_result( ) , Ok ( 100 ) ) ;
821
778
assert_eq!( none. into_result( ) , Err ( ( ) ) ) ;
822
779
}
823
-
824
- #[ test]
825
- pub fn test_to_either( ) {
826
- let some: Option <int> = Some ( 100 ) ;
827
- let none: Option <int> = None ;
828
-
829
- assert_eq!( some. to_either( ) , either:: Right ( 100 ) ) ;
830
- assert_eq!( none. to_either( ) , either:: Left ( ( ) ) ) ;
831
- }
832
-
833
- #[ test]
834
- pub fn test_into_either( ) {
835
- let some: Option <int> = Some ( 100 ) ;
836
- let none: Option <int> = None ;
837
-
838
- assert_eq!( some. into_either( ) , either:: Right ( 100 ) ) ;
839
- assert_eq!( none. into_either( ) , either:: Left ( ( ) ) ) ;
840
- }
841
780
}
0 commit comments