mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-12-01 00:49:30 +00:00
155 lines
7 KiB
Text
155 lines
7 KiB
Text
error: impl for `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:18:35
|
|
|
|
|
LL | impl<K: Hash + Eq, V> Foo<i8> for HashMap<K, V> {
|
|
| ^^^^^^^^^^^^^
|
|
|
|
|
note: the lint level is defined here
|
|
--> $DIR/implicit_hasher.rs:3:9
|
|
|
|
|
LL | #![deny(clippy::implicit_hasher)]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | impl<K: Hash + Eq, V, S: ::std::hash::BuildHasher + Default> Foo<i8> for HashMap<K, V, S> {
|
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
|
|
help: ...and use generic constructor
|
|
|
|
|
LL | (HashMap::default(), HashMap::with_capacity_and_hasher(10, Default::default()))
|
|
| ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: impl for `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:27:36
|
|
|
|
|
LL | impl<K: Hash + Eq, V> Foo<i8> for (HashMap<K, V>,) {
|
|
| ^^^^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | impl<K: Hash + Eq, V, S: ::std::hash::BuildHasher + Default> Foo<i8> for (HashMap<K, V, S>,) {
|
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
|
|
help: ...and use generic constructor
|
|
|
|
|
LL | ((HashMap::default(),), (HashMap::with_capacity_and_hasher(10, Default::default()),))
|
|
| ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: impl for `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:32:19
|
|
|
|
|
LL | impl Foo<i16> for HashMap<String, String> {
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | impl<S: ::std::hash::BuildHasher + Default> Foo<i16> for HashMap<String, String, S> {
|
|
| +++++++++++++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
help: ...and use generic constructor
|
|
|
|
|
LL | (HashMap::default(), HashMap::with_capacity_and_hasher(10, Default::default()))
|
|
| ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: impl for `HashSet` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:49:32
|
|
|
|
|
LL | impl<T: Hash + Eq> Foo<i8> for HashSet<T> {
|
|
| ^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | impl<T: Hash + Eq, S: ::std::hash::BuildHasher + Default> Foo<i8> for HashSet<T, S> {
|
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~
|
|
help: ...and use generic constructor
|
|
|
|
|
LL | (HashSet::default(), HashSet::with_capacity_and_hasher(10, Default::default()))
|
|
| ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: impl for `HashSet` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:54:19
|
|
|
|
|
LL | impl Foo<i16> for HashSet<String> {
|
|
| ^^^^^^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | impl<S: ::std::hash::BuildHasher + Default> Foo<i16> for HashSet<String, S> {
|
|
| +++++++++++++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~~~~
|
|
help: ...and use generic constructor
|
|
|
|
|
LL | (HashSet::default(), HashSet::with_capacity_and_hasher(10, Default::default()))
|
|
| ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: parameter of type `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:71:23
|
|
|
|
|
LL | pub fn foo(_map: &mut HashMap<i32, i32>, _set: &mut HashSet<i32>) {}
|
|
| ^^^^^^^^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | pub fn foo<S: ::std::hash::BuildHasher>(_map: &mut HashMap<i32, i32, S>, _set: &mut HashSet<i32>) {}
|
|
| +++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: parameter of type `HashSet` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:71:53
|
|
|
|
|
LL | pub fn foo(_map: &mut HashMap<i32, i32>, _set: &mut HashSet<i32>) {}
|
|
| ^^^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | pub fn foo<S: ::std::hash::BuildHasher>(_map: &mut HashMap<i32, i32>, _set: &mut HashSet<i32, S>) {}
|
|
| +++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~
|
|
|
|
error: impl for `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:77:43
|
|
|
|
|
LL | impl<K: Hash + Eq, V> Foo<u8> for HashMap<K, V> {
|
|
| ^^^^^^^^^^^^^
|
|
|
|
|
= note: this error originates in the macro `__inline_mac_mod_gen` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | impl<K: Hash + Eq, V, S: ::std::hash::BuildHasher + Default> Foo<u8> for HashMap<K, V, S> {
|
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
|
|
help: ...and use generic constructor
|
|
|
|
|
LL | (HashMap::default(), HashMap::with_capacity_and_hasher(10, Default::default()))
|
|
| ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: parameter of type `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:83:31
|
|
|
|
|
LL | pub fn bar(_map: &mut HashMap<i32, i32>, _set: &mut HashSet<i32>) {}
|
|
| ^^^^^^^^^^^^^^^^^
|
|
|
|
|
= note: this error originates in the macro `__inline_mac_mod_gen` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | pub fn bar<S: ::std::hash::BuildHasher>(_map: &mut HashMap<i32, i32, S>, _set: &mut HashSet<i32>) {}
|
|
| +++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: parameter of type `HashSet` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:83:61
|
|
|
|
|
LL | pub fn bar(_map: &mut HashMap<i32, i32>, _set: &mut HashSet<i32>) {}
|
|
| ^^^^^^^^^^^^
|
|
|
|
|
= note: this error originates in the macro `__inline_mac_mod_gen` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | pub fn bar<S: ::std::hash::BuildHasher>(_map: &mut HashMap<i32, i32>, _set: &mut HashSet<i32, S>) {}
|
|
| +++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~
|
|
|
|
error: parameter of type `HashMap` should be generalized over different hashers
|
|
--> $DIR/implicit_hasher.rs:101:35
|
|
|
|
|
LL | pub async fn election_vote(_data: HashMap<i32, i32>) {}
|
|
| ^^^^^^^^^^^^^^^^^
|
|
|
|
|
help: consider adding a type parameter
|
|
|
|
|
LL | pub async fn election_vote<S: ::std::hash::BuildHasher>(_data: HashMap<i32, i32, S>) {}
|
|
| +++++++++++++++++++++++++++++ ~~~~~~~~~~~~~~~~~~~~
|
|
|
|
error: aborting due to 11 previous errors
|
|
|