Skip to content

Commit df848e0

Browse files
mightyiamwarren2k
andcommitted
refactor: resolve clippy lints
Co-authored-by: warren2k <[email protected]>
1 parent 838d57a commit df848e0

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
@@ -2046,6 +2046,7 @@ pub trait Itertools: Iterator {
20462046
/// let data : Option<usize> = None;
20472047
/// assert_eq!(data.into_iter().all_equal_value(), Err(None));
20482048
/// ```
2049+
#[allow(clippy::type_complexity)]
20492050
fn all_equal_value(&mut self) -> Result<Self::Item, Option<(Self::Item, Self::Item)>>
20502051
where
20512052
Self: Sized,
@@ -4002,7 +4003,7 @@ where
40024003
(None, None) => return,
40034004
(a, b) => {
40044005
let equal = match (&a, &b) {
4005-
(&Some(ref a), &Some(ref b)) => a == b,
4006+
(Some(a), Some(b)) => a == b,
40064007
_ => false,
40074008
};
40084009
assert!(

src/tuple_impl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ where
6161
buffer
6262
.iter()
6363
.position(|x| x.is_none())
64-
.unwrap_or_else(|| buffer.len())
64+
.unwrap_or(buffer.len())
6565
};
6666
(len, Some(len))
6767
}

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

@@ -1219,7 +1218,7 @@ struct Val(u32, u32);
12191218

12201219
impl PartialOrd<Val> for Val {
12211220
fn partial_cmp(&self, other: &Val) -> Option<Ordering> {
1222-
self.0.partial_cmp(&other.0)
1221+
Some(self.cmp(other))
12231222
}
12241223
}
12251224

@@ -1322,7 +1321,7 @@ quickcheck! {
13221321
fn at_most_one_i32(a: Vec<i32>) -> TestResult {
13231322
let ret = a.iter().cloned().at_most_one();
13241323
match a.len() {
1325-
0 => TestResult::from_bool(ret.unwrap() == None),
1324+
0 => TestResult::from_bool(ret.unwrap().is_none()),
13261325
1 => TestResult::from_bool(ret.unwrap() == Some(a[0])),
13271326
_ => TestResult::from_bool(ret.unwrap_err().eq(a.iter().cloned())),
13281327
}

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)