1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-31 04:57:45 +00:00

refactor/polish ~ fix cargo clippy complaints (skip_while_next)

This commit is contained in:
Roy Ivy III 2020-04-03 21:21:07 -05:00
parent 0cf704a1bf
commit 9675addc50
4 changed files with 5 additions and 8 deletions

View file

@ -146,7 +146,7 @@ fn next_tabstop(tabstops: &[usize], col: usize) -> usize {
if tabstops.len() == 1 { if tabstops.len() == 1 {
tabstops[0] - col % tabstops[0] tabstops[0] - col % tabstops[0]
} else { } else {
match tabstops.iter().skip_while(|&&t| t <= col).next() { match tabstops.iter().find(|&&t| t > col) {
Some(t) => t - col, Some(t) => t - col,
None => 1, None => 1,
} }

View file

@ -416,8 +416,7 @@ fn simple_backup_path(path: &PathBuf, suffix: &str) -> PathBuf {
fn numbered_backup_path(path: &PathBuf) -> PathBuf { fn numbered_backup_path(path: &PathBuf) -> PathBuf {
(1_u64..) (1_u64..)
.map(|i| path.with_extension(format!("~{}~", i))) .map(|i| path.with_extension(format!("~{}~", i)))
.skip_while(|p| p.exists()) .find(|p| !p.exists())
.next()
.expect("cannot create backup") .expect("cannot create backup")
} }

View file

@ -411,10 +411,8 @@ fn numeric_compare(a: &str, b: &str) -> Ordering {
} }
fn human_numeric_convert(a: &str) -> f64 { fn human_numeric_convert(a: &str) -> f64 {
let int_iter = a.chars(); let int_str: String = a.chars().take_while(|c| c.is_numeric()).collect();
let suffix_iter = a.chars(); let suffix = a.chars().find(|c| !c.is_numeric());
let int_str: String = int_iter.take_while(|c| c.is_numeric()).collect();
let suffix = suffix_iter.skip_while(|c| c.is_numeric()).next();
let int_part = match int_str.parse::<f64>() { let int_part = match int_str.parse::<f64>() {
Ok(i) => i, Ok(i) => i,
Err(_) => -1f64, Err(_) => -1f64,

View file

@ -164,7 +164,7 @@ fn next_tabstop(tabstops: &[usize], col: usize) -> Option<usize> {
Some(tabstops[0] - col % tabstops[0]) Some(tabstops[0] - col % tabstops[0])
} else { } else {
// find next larger tab // find next larger tab
match tabstops.iter().skip_while(|&&t| t <= col).next() { match tabstops.iter().find(|&&t| t > col) {
Some(t) => Some(t - col), Some(t) => Some(t - col),
None => None, // if there isn't one in the list, tab becomes a single space None => None, // if there isn't one in the list, tab becomes a single space
} }