Skip to content

Commit 4e9b9a5

Browse files
xtqqczzephimuemue
authored andcommitted
fix: clippy::cast_lossless
1 parent 3f99dc6 commit 4e9b9a5

File tree

6 files changed

+34
-34
lines changed

6 files changed

+34
-34
lines changed

src/adaptors/coalesce.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,9 @@ where
7474
fn size_hint(&self) -> (usize, Option<usize>) {
7575
let (low, hi) = size_hint::add_scalar(
7676
self.iter.size_hint(),
77-
matches!(self.last, Some(Some(_))) as usize,
77+
usize::from(matches!(self.last, Some(Some(_)))),
7878
);
79-
((low > 0) as usize, hi)
79+
(usize::from(low > 0), hi)
8080
}
8181

8282
fn fold<Acc, FnAcc>(self, acc: Acc, mut fn_acc: FnAcc) -> Acc

src/adaptors/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -300,11 +300,11 @@ where
300300
#[inline]
301301
fn size_hint(&self) -> (usize, Option<usize>) {
302302
// Not ExactSizeIterator because size may be larger than usize
303-
size_hint::add_scalar(self.iter.size_hint(), self.top.is_some() as usize)
303+
size_hint::add_scalar(self.iter.size_hint(), usize::from(self.top.is_some()))
304304
}
305305

306306
fn count(self) -> usize {
307-
self.iter.count() + (self.top.is_some() as usize)
307+
self.iter.count() + usize::from(self.top.is_some())
308308
}
309309

310310
fn last(self) -> Option<Self::Item> {

src/kmerge_impl.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ where
8080
while child + 1 < heap.len() {
8181
// pick the smaller of the two children
8282
// use arithmetic to avoid an unpredictable branch
83-
child += less_than(&heap[child + 1], &heap[child]) as usize;
83+
child += usize::from(less_than(&heap[child + 1], &heap[child]));
8484

8585
// sift down is done if we are already in order
8686
if !less_than(&heap[child], &heap[pos]) {

src/unique_impl.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ where
6868
#[inline]
6969
fn size_hint(&self) -> (usize, Option<usize>) {
7070
let (low, hi) = self.iter.size_hint();
71-
((low > 0 && self.used.is_empty()) as usize, hi)
71+
(usize::from(low > 0 && self.used.is_empty()), hi)
7272
}
7373

7474
fn count(self) -> usize {
@@ -119,7 +119,7 @@ where
119119
#[inline]
120120
fn size_hint(&self) -> (usize, Option<usize>) {
121121
let (low, hi) = self.iter.iter.size_hint();
122-
((low > 0 && self.iter.used.is_empty()) as usize, hi)
122+
(usize::from(low > 0 && self.iter.used.is_empty()), hi)
123123
}
124124

125125
fn count(self) -> usize {

tests/quick.rs

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1064,7 +1064,7 @@ quickcheck! {
10641064

10651065
let tup1 = |(_, b)| b;
10661066
for &(ord, consume_now) in &order {
1067-
let iter = &mut [&mut chunks1, &mut chunks2][ord as usize];
1067+
let iter = &mut [&mut chunks1, &mut chunks2][usize::from(ord)];
10681068
match iter.next() {
10691069
Some((_, gr)) => if consume_now {
10701070
for og in old_chunks.drain(..) {
@@ -1422,9 +1422,9 @@ quickcheck! {
14221422
}
14231423

14241424
fn correct_grouping_map_by_aggregate_modulo_key(a: Vec<u8>, modulo: u8) -> () {
1425-
let modulo = if modulo < 2 { 2 } else { modulo } as u64; // Avoid `% 0`
1425+
let modulo = u64::from(if modulo < 2 { 2 } else { modulo }); // Avoid `% 0`
14261426
let lookup = a.iter()
1427-
.map(|&b| b as u64) // Avoid overflows
1427+
.map(|&b| u64::from(b)) // Avoid overflows
14281428
.into_grouping_map_by(|i| i % modulo)
14291429
.aggregate(|acc, &key, val| {
14301430
assert!(val % modulo == key);
@@ -1436,7 +1436,7 @@ quickcheck! {
14361436
});
14371437

14381438
let group_map_lookup = a.iter()
1439-
.map(|&b| b as u64)
1439+
.map(|&b| u64::from(b))
14401440
.map(|i| (i % modulo, i))
14411441
.into_group_map()
14421442
.into_iter()
@@ -1456,7 +1456,7 @@ quickcheck! {
14561456
assert_eq!(
14571457
lookup.get(&m).copied(),
14581458
a.iter()
1459-
.map(|&b| b as u64)
1459+
.map(|&b| u64::from(b))
14601460
.filter(|&val| val % modulo == m)
14611461
.fold(None, |acc, val| {
14621462
if val % (modulo - 1) == 0 {
@@ -1475,8 +1475,8 @@ quickcheck! {
14751475
acc: u64,
14761476
}
14771477

1478-
let modulo = if modulo == 0 { 1 } else { modulo } as u64; // Avoid `% 0`
1479-
let lookup = a.iter().map(|&b| b as u64) // Avoid overflows
1478+
let modulo = u64::from(if modulo == 0 { 1 } else { modulo }); // Avoid `% 0`
1479+
let lookup = a.iter().map(|&b| u64::from(b)) // Avoid overflows
14801480
.into_grouping_map_by(|i| i % modulo)
14811481
.fold_with(|_key, _val| Default::default(), |Accumulator { acc }, &key, val| {
14821482
assert!(val % modulo == key);
@@ -1485,7 +1485,7 @@ quickcheck! {
14851485
});
14861486

14871487
let group_map_lookup = a.iter()
1488-
.map(|&b| b as u64)
1488+
.map(|&b| u64::from(b))
14891489
.map(|i| (i % modulo, i))
14901490
.into_group_map()
14911491
.into_iter()
@@ -1494,21 +1494,21 @@ quickcheck! {
14941494
assert_eq!(lookup, group_map_lookup);
14951495

14961496
for (&key, &Accumulator { acc: sum }) in lookup.iter() {
1497-
assert_eq!(sum, a.iter().map(|&b| b as u64).filter(|&val| val % modulo == key).sum::<u64>());
1497+
assert_eq!(sum, a.iter().map(|&b| u64::from(b)).filter(|&val| val % modulo == key).sum::<u64>());
14981498
}
14991499
}
15001500

15011501
fn correct_grouping_map_by_fold_modulo_key(a: Vec<u8>, modulo: u8) -> () {
1502-
let modulo = if modulo == 0 { 1 } else { modulo } as u64; // Avoid `% 0`
1503-
let lookup = a.iter().map(|&b| b as u64) // Avoid overflows
1502+
let modulo = u64::from(if modulo == 0 { 1 } else { modulo }); // Avoid `% 0`
1503+
let lookup = a.iter().map(|&b| u64::from(b)) // Avoid overflows
15041504
.into_grouping_map_by(|i| i % modulo)
15051505
.fold(0u64, |acc, &key, val| {
15061506
assert!(val % modulo == key);
15071507
acc + val
15081508
});
15091509

15101510
let group_map_lookup = a.iter()
1511-
.map(|&b| b as u64)
1511+
.map(|&b| u64::from(b))
15121512
.map(|i| (i % modulo, i))
15131513
.into_group_map()
15141514
.into_iter()
@@ -1517,21 +1517,21 @@ quickcheck! {
15171517
assert_eq!(lookup, group_map_lookup);
15181518

15191519
for (&key, &sum) in lookup.iter() {
1520-
assert_eq!(sum, a.iter().map(|&b| b as u64).filter(|&val| val % modulo == key).sum::<u64>());
1520+
assert_eq!(sum, a.iter().map(|&b| u64::from(b)).filter(|&val| val % modulo == key).sum::<u64>());
15211521
}
15221522
}
15231523

15241524
fn correct_grouping_map_by_reduce_modulo_key(a: Vec<u8>, modulo: u8) -> () {
1525-
let modulo = if modulo == 0 { 1 } else { modulo } as u64; // Avoid `% 0`
1526-
let lookup = a.iter().map(|&b| b as u64) // Avoid overflows
1525+
let modulo = u64::from(if modulo == 0 { 1 } else { modulo }); // Avoid `% 0`
1526+
let lookup = a.iter().map(|&b| u64::from(b)) // Avoid overflows
15271527
.into_grouping_map_by(|i| i % modulo)
15281528
.reduce(|acc, &key, val| {
15291529
assert!(val % modulo == key);
15301530
acc + val
15311531
});
15321532

15331533
let group_map_lookup = a.iter()
1534-
.map(|&b| b as u64)
1534+
.map(|&b| u64::from(b))
15351535
.map(|i| (i % modulo, i))
15361536
.into_group_map()
15371537
.into_iter()
@@ -1540,7 +1540,7 @@ quickcheck! {
15401540
assert_eq!(lookup, group_map_lookup);
15411541

15421542
for (&key, &sum) in lookup.iter() {
1543-
assert_eq!(sum, a.iter().map(|&b| b as u64).filter(|&val| val % modulo == key).sum::<u64>());
1543+
assert_eq!(sum, a.iter().map(|&b| u64::from(b)).filter(|&val| val % modulo == key).sum::<u64>());
15441544
}
15451545
}
15461546

@@ -1706,12 +1706,12 @@ quickcheck! {
17061706
}
17071707

17081708
fn correct_grouping_map_by_sum_modulo_key(a: Vec<u8>, modulo: u8) -> () {
1709-
let modulo = if modulo == 0 { 1 } else { modulo } as u64; // Avoid `% 0`
1710-
let lookup = a.iter().map(|&b| b as u64) // Avoid overflows
1709+
let modulo = u64::from(if modulo == 0 { 1 } else { modulo }); // Avoid `% 0`
1710+
let lookup = a.iter().map(|&b| u64::from(b)) // Avoid overflows
17111711
.into_grouping_map_by(|i| i % modulo)
17121712
.sum();
17131713

1714-
let group_map_lookup = a.iter().map(|&b| b as u64)
1714+
let group_map_lookup = a.iter().map(|&b| u64::from(b))
17151715
.map(|i| (i % modulo, i))
17161716
.into_group_map()
17171717
.into_iter()
@@ -1720,17 +1720,17 @@ quickcheck! {
17201720
assert_eq!(lookup, group_map_lookup);
17211721

17221722
for (&key, &sum) in lookup.iter() {
1723-
assert_eq!(sum, a.iter().map(|&b| b as u64).filter(|&val| val % modulo == key).sum::<u64>());
1723+
assert_eq!(sum, a.iter().map(|&b| u64::from(b)).filter(|&val| val % modulo == key).sum::<u64>());
17241724
}
17251725
}
17261726

17271727
fn correct_grouping_map_by_product_modulo_key(a: Vec<u8>, modulo: u8) -> () {
1728-
let modulo = Wrapping(if modulo == 0 { 1 } else { modulo } as u64); // Avoid `% 0`
1729-
let lookup = a.iter().map(|&b| Wrapping(b as u64)) // Avoid overflows
1728+
let modulo = Wrapping(u64::from(if modulo == 0 { 1 } else { modulo })); // Avoid `% 0`
1729+
let lookup = a.iter().map(|&b| Wrapping(u64::from(b))) // Avoid overflows
17301730
.into_grouping_map_by(|i| i % modulo)
17311731
.product();
17321732

1733-
let group_map_lookup = a.iter().map(|&b| Wrapping(b as u64))
1733+
let group_map_lookup = a.iter().map(|&b| Wrapping(u64::from(b)))
17341734
.map(|i| (i % modulo, i))
17351735
.into_group_map()
17361736
.into_iter()
@@ -1742,7 +1742,7 @@ quickcheck! {
17421742
assert_eq!(
17431743
prod,
17441744
a.iter()
1745-
.map(|&b| Wrapping(b as u64))
1745+
.map(|&b| Wrapping(u64::from(b)))
17461746
.filter(|&val| val % modulo == key)
17471747
.product::<Wrapping<u64>>()
17481748
);

tests/test_std.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ qc::quickcheck! {
496496
fn k_smallest_range(n: i64, m: u16, k: u16) -> () {
497497
// u16 is used to constrain k and m to 0..2¹⁶,
498498
// otherwise the test could use too much memory.
499-
let (k, m) = (k as usize, m as u64);
499+
let (k, m) = (k as usize, u64::from(m));
500500

501501
let mut v: Vec<_> = (n..n.saturating_add(m as _)).collect();
502502
// Generate a random permutation of n..n+m
@@ -532,7 +532,7 @@ qc::quickcheck! {
532532
fn k_smallest_relaxed_range(n: i64, m: u16, k: u16) -> () {
533533
// u16 is used to constrain k and m to 0..2¹⁶,
534534
// otherwise the test could use too much memory.
535-
let (k, m) = (k as usize, m as u64);
535+
let (k, m) = (k as usize, u64::from(m));
536536

537537
let mut v: Vec<_> = (n..n.saturating_add(m as _)).collect();
538538
// Generate a random permutation of n..n+m

0 commit comments

Comments
 (0)