rust/clippy_utils
Samuel Tardieu ae97d31c76
is_expr_identity_of_pat: simplify using (unordered_)over (#15450)
This makes the last arm significantly shorter, but marginally shortens
the other ones as well

- I first removed the length comparisons from the match guards since
they were already present in `(unordered_)over`, but then brought them
back since they are quite a helpful "guard clause"
- It's a bit unfortunate that the `Slice`/`Array` arm can't use `over`
as well, which creates some asymmetry, but changing the signature of
`over` to accept arbitrary iterators felt like too much to me,
especially because we'd lose the ability to compare the lengths of the
two inputs (which could've been mitigated by `ExactLenIterator::len`,
but that method is still unstable AFAIR)

One other option would be to only use `unordered_over` in the last arm,
and not `over`, but I think `over` is not that bad..

changelog: none
2025-08-22 16:55:42 +00:00
..
src is_expr_identity_of_pat: simplify using (unordered_)over (#15450) 2025-08-22 16:55:42 +00:00
Cargo.toml Merge commit '334fb906ae' into clippy-subtree-update 2025-08-07 17:05:15 +02:00
README.md Bump nightly version -> 2025-08-22 2025-08-22 14:26:37 +02:00

clippy-utils

Helpful tools for writing lints, provided as they are used in Clippy.

Usage

This crate is only guaranteed to build with this nightly toolchain:

nightly-2025-08-22

To use clippy-utils in your lint, add the following to your Cargo.toml:

clippy_utils = "0.1.XY"

XY is the version of the nightly toolchain above and can be determined with rustc +nightly-YYYY-MM-DD -V.

⚠️ Stability ⚠️

No stability guarantees are made for this crate! Use at your own risk.

Function signatures can change or be removed without replacement without any prior notice.

LICENSE

Copyright 2014-2025 The Rust Project Developers

Licensed under the Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0> or the MIT license <https://opensource.org/licenses/MIT>, at your option. Files in the project may not be copied, modified, or distributed except according to those terms.