// run-rustfix #![allow(unused, clippy::suspicious_map, clippy::iter_count)] use std::collections::{BTreeMap, BTreeSet, BinaryHeap, HashMap, HashSet, LinkedList}; #[warn(clippy::needless_collect)] #[allow(unused_variables, clippy::iter_cloned_collect, clippy::iter_next_slice)] fn main() { let sample = [1; 5]; let len = sample.iter().count(); if sample.iter().next().is_none() { // Empty } sample.iter().cloned().any(|x| x == 1); // #7164 HashMap's and BTreeMap's `len` usage should not be linted sample.iter().map(|x| (x, x)).collect::>().len(); sample.iter().map(|x| (x, x)).collect::>().len(); sample.iter().map(|x| (x, x)).next().is_none(); sample.iter().map(|x| (x, x)).next().is_none(); // Notice the `HashSet`--this should not be linted sample.iter().collect::>().len(); // Neither should this sample.iter().collect::>().len(); sample.iter().count(); sample.iter().next().is_none(); sample.iter().cloned().any(|x| x == 1); sample.iter().any(|x| x == &1); // `BinaryHeap` doesn't have `contains` method sample.iter().count(); sample.iter().next().is_none(); }