@@ -45,6 +45,7 @@ use core::time::Duration;
4545use std:: borrow:: { Cow , ToOwned } ;
4646use std:: collections:: { BTreeMap , BTreeSet , BinaryHeap , HashMap , HashSet , LinkedList , VecDeque } ;
4747use std:: ffi:: { CString , OsString } ;
48+ use std:: hash:: BuildHasher ;
4849use std:: net:: { Ipv4Addr , Ipv6Addr } ;
4950use std:: path:: PathBuf ;
5051use std:: rc:: Rc ;
@@ -736,8 +737,8 @@ impl<'a, A: Arbitrary<'a> + Ord> Arbitrary<'a> for BinaryHeap<A> {
736737 }
737738}
738739
739- impl < ' a , K : Arbitrary < ' a > + Eq + :: std:: hash:: Hash , V : Arbitrary < ' a > > Arbitrary < ' a >
740- for HashMap < K , V >
740+ impl < ' a , K : Arbitrary < ' a > + Eq + :: std:: hash:: Hash , V : Arbitrary < ' a > , S : BuildHasher + Default >
741+ Arbitrary < ' a > for HashMap < K , V , S >
741742{
742743 fn arbitrary ( u : & mut Unstructured < ' a > ) -> Result < Self > {
743744 u. arbitrary_iter ( ) ?. collect ( )
@@ -753,7 +754,9 @@ impl<'a, K: Arbitrary<'a> + Eq + ::std::hash::Hash, V: Arbitrary<'a>> Arbitrary<
753754 }
754755}
755756
756- impl < ' a , A : Arbitrary < ' a > + Eq + :: std:: hash:: Hash > Arbitrary < ' a > for HashSet < A > {
757+ impl < ' a , A : Arbitrary < ' a > + Eq + :: std:: hash:: Hash , S : BuildHasher + Default > Arbitrary < ' a >
758+ for HashSet < A , S >
759+ {
757760 fn arbitrary ( u : & mut Unstructured < ' a > ) -> Result < Self > {
758761 u. arbitrary_iter ( ) ?. collect ( )
759762 }
0 commit comments