bors 7600535511 Auto merge of #9743 - smoelius:improve-needless-lifetimes, r=Alexendoo
Improve `needless_lifetimes`

This PR makes the following improvements to `needless_lifetimes`.

* It fixes the following false negative, where `foo` is flagged but `bar` is not:
  ```rust
    fn foo<'a>(x: &'a u8, y: &'_ u8) {}

    fn bar<'a>(x: &'a u8, y: &'_ u8, z: &'_ u8) {}
  ```
* It flags more cases, generally. Previously, `needless_borrow` required *all* lifetimes to be used only once. With the changes, individual lifetimes are flagged for being used only once, even if not all lifetimes are.
* Finally, it tries to produce more clear error messages.

changelog: fix `needless_lifetimes` false negative involving functions with multiple unnamed lifetimes
changelog: in `needless_lifetimes`, flag individual lifetimes used only once, rather than require all lifetimes to be used only once
changelog: in `needless_lifetimes`, emit "replace with `'_`" warnings only when applicable, and point to a generic argument
2022-11-01 00:25:30 +00:00
..
2022-10-01 10:03:06 +00:00
2022-10-28 13:18:07 -04:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 19:23:53 +02:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-12 13:29:27 +02:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-25 20:30:37 +02:00
2022-10-25 20:30:37 +02:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-09 13:07:21 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-28 13:18:07 -04:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-13 11:40:13 +00:00
2022-10-01 10:03:06 +00:00
2022-10-26 12:24:37 +08:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-30 06:47:35 -04:00
2022-10-01 10:03:06 +00:00
2022-10-26 12:24:37 +08:00
2022-10-26 12:24:37 +08:00
2022-10-28 08:53:06 -04:00
2022-10-28 08:53:06 -04:00
2022-10-30 06:47:35 -04:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-16 16:59:04 +08:00
2022-10-16 16:59:04 +08:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-23 14:06:51 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-09-23 18:42:14 +02:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-09-23 18:42:14 +02:00
2022-10-30 06:47:35 -04:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-09-23 18:42:14 +02:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00
2022-10-01 10:03:06 +00:00