Skip to content

Commit 4b428f1

Browse files
mightyiamwarren2k
andcommitted
refactor: resolve clippy lints
Co-authored-by: warren2k <[email protected]>
1 parent 100c90b commit 4b428f1

File tree

12 files changed

+61
-44
lines changed

12 files changed

+61
-44
lines changed

benches/bench1.rs

+9-1
Original file line numberDiff line numberDiff line change
@@ -475,6 +475,8 @@ fn merge_default(c: &mut Criterion) {
475475
let mut data1 = vec![0; 1024];
476476
let mut data2 = vec![0; 800];
477477
let mut x = 0;
478+
479+
#[allow(clippy::explicit_counter_loop)]
478480
for (_, elt) in data1.iter_mut().enumerate() {
479481
*elt = x;
480482
x += 1;
@@ -501,6 +503,8 @@ fn merge_by_cmp(c: &mut Criterion) {
501503
let mut data1 = vec![0; 1024];
502504
let mut data2 = vec![0; 800];
503505
let mut x = 0;
506+
507+
#[allow(clippy::explicit_counter_loop)]
504508
for (_, elt) in data1.iter_mut().enumerate() {
505509
*elt = x;
506510
x += 1;
@@ -527,6 +531,8 @@ fn merge_by_lt(c: &mut Criterion) {
527531
let mut data1 = vec![0; 1024];
528532
let mut data2 = vec![0; 800];
529533
let mut x = 0;
534+
535+
#[allow(clippy::explicit_counter_loop)]
530536
for (_, elt) in data1.iter_mut().enumerate() {
531537
*elt = x;
532538
x += 1;
@@ -553,6 +559,8 @@ fn kmerge_default(c: &mut Criterion) {
553559
let mut data1 = vec![0; 1024];
554560
let mut data2 = vec![0; 800];
555561
let mut x = 0;
562+
563+
#[allow(clippy::explicit_counter_loop)]
556564
for (_, elt) in data1.iter_mut().enumerate() {
557565
*elt = x;
558566
x += 1;
@@ -592,7 +600,7 @@ fn kmerge_tenway(c: &mut Criterion) {
592600

593601
let mut chunks = Vec::new();
594602
let mut rest = &mut data[..];
595-
while rest.len() > 0 {
603+
while !rest.is_empty() {
596604
let chunk_len = 1 + rng(&mut state) % 512;
597605
let chunk_len = cmp::min(rest.len(), chunk_len as usize);
598606
let (fst, tail) = { rest }.split_at_mut(chunk_len);

benches/extra/zipslices.rs

+2
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ where
138138

139139
/// A helper trait to let `ZipSlices` accept both `&[T]` and `&mut [T]`.
140140
///
141+
/// # Safety
142+
///
141143
/// Unsafe trait because:
142144
///
143145
/// - Implementors must guarantee that `get_unchecked` is valid for all indices `0..len()`.

benches/fold_specialization.rs

+8-2
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,21 @@ mod specialization {
4646
let arr = [1; 1024];
4747

4848
c.bench_function("internal specialized", move |b| {
49-
b.iter(|| arr.iter().intersperse(&0).fold(0, |acc, x| acc + x))
49+
b.iter(|| {
50+
#[allow(clippy::unnecessary_fold)]
51+
arr.iter().intersperse(&0).fold(0, |acc, x| acc + x)
52+
})
5053
});
5154
}
5255

5356
pub fn internal_unspecialized(c: &mut Criterion) {
5457
let arr = [1; 1024];
5558

5659
c.bench_function("internal unspecialized", move |b| {
57-
b.iter(|| Unspecialized(arr.iter().intersperse(&0)).fold(0, |acc, x| acc + x))
60+
b.iter(|| {
61+
#[allow(clippy::unnecessary_fold)]
62+
Unspecialized(arr.iter().intersperse(&0)).fold(0, |acc, x| acc + x)
63+
})
5864
});
5965
}
6066
}

examples/iris.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use std::iter::repeat;
99
use std::num::ParseFloatError;
1010
use std::str::FromStr;
1111

12-
static DATA: &'static str = include_str!("iris.data");
12+
static DATA: &str = include_str!("iris.data");
1313

1414
#[derive(Clone, Debug)]
1515
struct Iris {
@@ -38,7 +38,7 @@ impl FromStr for Iris {
3838
name: "".into(),
3939
data: [0.; 4],
4040
};
41-
let mut parts = s.split(",").map(str::trim);
41+
let mut parts = s.split(',').map(str::trim);
4242

4343
// using Iterator::by_ref()
4444
for (index, part) in parts.by_ref().take(4).enumerate() {

src/adaptors/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -936,7 +936,7 @@ where
936936
type Item = usize;
937937

938938
fn next(&mut self) -> Option<Self::Item> {
939-
while let Some(v) = self.iter.next() {
939+
for v in self.iter.by_ref() {
940940
let i = self.count;
941941
self.count = i + 1;
942942
if (self.f)(v) {

src/adaptors/multi_product.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -220,9 +220,9 @@ where
220220
self.0.iter().fold(
221221
(0, Some(0)),
222222
|acc,
223-
&MultiProductIter {
224-
ref iter,
225-
ref iter_orig,
223+
MultiProductIter {
224+
iter,
225+
iter_orig,
226226
cur: _,
227227
}| {
228228
let cur_size = iter.size_hint();

src/lib.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -1010,7 +1010,7 @@ pub trait Itertools: Iterator {
10101010
J: IntoIterator<Item = Self::Item>,
10111011
F: FnMut(&Self::Item, &Self::Item) -> bool,
10121012
{
1013-
merge_join::merge_by_new(self, other.into_iter(), is_first)
1013+
merge_join::merge_by_new(self, other, is_first)
10141014
}
10151015

10161016
/// Create an iterator that merges items from both this and the specified
@@ -2047,6 +2047,7 @@ pub trait Itertools: Iterator {
20472047
/// let data : Option<usize> = None;
20482048
/// assert_eq!(data.into_iter().all_equal_value(), Err(None));
20492049
/// ```
2050+
#[allow(clippy::type_complexity)]
20502051
fn all_equal_value(&mut self) -> Result<Self::Item, Option<(Self::Item, Self::Item)>>
20512052
where
20522053
Self: Sized,
@@ -4000,7 +4001,7 @@ where
40004001
(None, None) => return,
40014002
(a, b) => {
40024003
let equal = match (&a, &b) {
4003-
(&Some(ref a), &Some(ref b)) => a == b,
4004+
(Some(a), Some(b)) => a == b,
40044005
_ => false,
40054006
};
40064007
assert!(

src/tuple_impl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ where
6262
buffer
6363
.iter()
6464
.position(|x| x.is_none())
65-
.unwrap_or_else(|| buffer.len())
65+
.unwrap_or(buffer.len())
6666
};
6767
(len, Some(len))
6868
}

src/unique_impl.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ where
6161
type Item = I::Item;
6262

6363
fn next(&mut self) -> Option<Self::Item> {
64-
while let Some(v) = self.iter.next() {
64+
for v in self.iter.by_ref() {
6565
let key = (self.f)(&v);
6666
if self.used.insert(key, ()).is_none() {
6767
return Some(v);
@@ -115,7 +115,7 @@ where
115115
type Item = I::Item;
116116

117117
fn next(&mut self) -> Option<Self::Item> {
118-
while let Some(v) = self.iter.iter.next() {
118+
for v in self.iter.iter.by_ref() {
119119
if let Entry::Vacant(entry) = self.iter.used.entry(v) {
120120
let elt = entry.key().clone();
121121
entry.insert(());

tests/quick.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -819,9 +819,8 @@ quickcheck! {
819819
quickcheck! {
820820
fn size_put_back(a: Vec<u8>, x: Option<u8>) -> bool {
821821
let mut it = put_back(a.into_iter());
822-
match x {
823-
Some(t) => it.put_back(t),
824-
None => {}
822+
if let Some(t) = x {
823+
it.put_back(t)
825824
}
826825
correct_size_hint(it)
827826
}
@@ -920,7 +919,7 @@ quickcheck! {
920919
}
921920
}
922921
}
923-
cmb.next() == None
922+
cmb.next().is_none()
924923
}
925924
}
926925

@@ -1207,7 +1206,7 @@ struct Val(u32, u32);
12071206

12081207
impl PartialOrd<Val> for Val {
12091208
fn partial_cmp(&self, other: &Val) -> Option<Ordering> {
1210-
self.0.partial_cmp(&other.0)
1209+
Some(self.cmp(other))
12111210
}
12121211
}
12131212

@@ -1310,7 +1309,7 @@ quickcheck! {
13101309
fn at_most_one_i32(a: Vec<i32>) -> TestResult {
13111310
let ret = a.iter().cloned().at_most_one();
13121311
match a.len() {
1313-
0 => TestResult::from_bool(ret.unwrap() == None),
1312+
0 => TestResult::from_bool(ret.unwrap().is_none()),
13141313
1 => TestResult::from_bool(ret.unwrap() == Some(a[0])),
13151314
_ => TestResult::from_bool(ret.unwrap_err().eq(a.iter().cloned())),
13161315
}

tests/test_core.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ fn product2() {
2727
assert!(prod.next() == Some(('α', 1)));
2828
assert!(prod.next() == Some(('β', 0)));
2929
assert!(prod.next() == Some(('β', 1)));
30-
assert!(prod.next() == None);
30+
assert!(prod.next().is_none());
3131
}
3232

3333
#[test]

0 commit comments

Comments
 (0)