11
11
use borrow:: Borrow ;
12
12
use clone:: Clone ;
13
13
use cmp:: { Eq , PartialEq } ;
14
- use core:: marker:: { Sized , Send , Sync } ;
14
+ use core:: marker:: Sized ;
15
15
use default:: Default ;
16
16
use fmt:: Debug ;
17
17
use fmt;
@@ -764,27 +764,18 @@ pub struct Iter<'a, K: 'a> {
764
764
iter : Keys < ' a , K , ( ) >
765
765
}
766
766
767
- unsafe impl < ' a , K : Send > Send for Iter < ' a , K > { }
768
- unsafe impl < ' a , K : Sync > Sync for Iter < ' a , K > { }
769
-
770
767
/// HashSet move iterator
771
768
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
772
769
pub struct IntoIter < K > {
773
770
iter : Map < map:: IntoIter < K , ( ) > , fn ( ( K , ( ) ) ) -> K >
774
771
}
775
772
776
- unsafe impl < K : Send > Send for IntoIter < K > { }
777
- unsafe impl < K : Sync > Sync for IntoIter < K > { }
778
-
779
773
/// HashSet drain iterator
780
774
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
781
775
pub struct Drain < ' a , K : ' a > {
782
776
iter : Map < map:: Drain < ' a , K , ( ) > , fn ( ( K , ( ) ) ) -> K > ,
783
777
}
784
778
785
- unsafe impl < ' a , K : Send > Send for Drain < ' a , K > { }
786
- unsafe impl < ' a , K : Sync > Sync for Drain < ' a , K > { }
787
-
788
779
/// Intersection iterator
789
780
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
790
781
pub struct Intersection < ' a , T : ' a , S : ' a > {
@@ -794,9 +785,6 @@ pub struct Intersection<'a, T: 'a, S: 'a> {
794
785
other : & ' a HashSet < T , S > ,
795
786
}
796
787
797
- unsafe impl < ' a , K : Send , S : Send > Send for Intersection < ' a , K , S > { }
798
- unsafe impl < ' a , K : Sync , S : Send > Sync for Intersection < ' a , K , S > { }
799
-
800
788
/// Difference iterator
801
789
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
802
790
pub struct Difference < ' a , T : ' a , S : ' a > {
@@ -806,27 +794,18 @@ pub struct Difference<'a, T: 'a, S: 'a> {
806
794
other : & ' a HashSet < T , S > ,
807
795
}
808
796
809
- unsafe impl < ' a , K : Send , S : Send > Send for Difference < ' a , K , S > { }
810
- unsafe impl < ' a , K : Sync , S : Send > Sync for Difference < ' a , K , S > { }
811
-
812
797
/// Symmetric difference iterator.
813
798
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
814
799
pub struct SymmetricDifference < ' a , T : ' a , S : ' a > {
815
800
iter : Chain < Difference < ' a , T , S > , Difference < ' a , T , S > >
816
801
}
817
802
818
- unsafe impl < ' a , K : Send , S : Send > Send for SymmetricDifference < ' a , K , S > { }
819
- unsafe impl < ' a , K : Sync , S : Send > Sync for SymmetricDifference < ' a , K , S > { }
820
-
821
803
/// Set union iterator.
822
804
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
823
805
pub struct Union < ' a , T : ' a , S : ' a > {
824
806
iter : Chain < Iter < ' a , T > , Difference < ' a , T , S > >
825
807
}
826
808
827
- unsafe impl < ' a , K : Send , S : Send > Send for Union < ' a , K , S > { }
828
- unsafe impl < ' a , K : Sync , S : Send > Sync for Union < ' a , K , S > { }
829
-
830
809
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
831
810
impl < ' a , T , S > IntoIterator for & ' a HashSet < T , S >
832
811
where T : Eq + Hash , S : HashState
0 commit comments