Use impl Iterator in arg position in clippy_dev

Small refactoring pulled out of work on #3266.
This should make the methods a bit more flexible.
This commit is contained in:
Philipp Hansch
2018-10-11 08:34:51 +02:00
parent 928a6d3dc7
commit 759ceb9840
2 changed files with 4 additions and 4 deletions

View File

@@ -56,8 +56,8 @@ impl Lint {
} }
/// Returns all non-deprecated lints /// Returns all non-deprecated lints
pub fn active_lints(lints: &[Self]) -> impl Iterator<Item=&Self> { pub fn active_lints(lints: impl Iterator<Item=Self>) -> impl Iterator<Item=Self> {
lints.iter().filter(|l| l.deprecation.is_none()) lints.filter(|l| l.deprecation.is_none())
} }
/// Returns the lints in a HashMap, grouped by the different lint groups /// Returns the lints in a HashMap, grouped by the different lint groups
@@ -144,7 +144,7 @@ fn test_active_lints() {
let expected = vec![ let expected = vec![
Lint::new("should_assert_eq2", "Not Deprecated", "abc", None, "module_name") Lint::new("should_assert_eq2", "Not Deprecated", "abc", None, "module_name")
]; ];
assert_eq!(expected, Lint::active_lints(&lints).cloned().collect::<Vec<Lint>>()); assert_eq!(expected, Lint::active_lints(lints.into_iter()).collect::<Vec<Lint>>());
} }
#[test] #[test]

View File

@@ -51,5 +51,5 @@ fn print_lints() {
} }
} }
println!("there are {} lints", Lint::active_lints(&lint_list).count()); println!("there are {} lints", Lint::active_lints(lint_list.into_iter()).count());
} }