diff --git a/src/uu/dd/src/blocks.rs b/src/uu/dd/src/blocks.rs index 41ed8b484dc..a3eace951c2 100644 --- a/src/uu/dd/src/blocks.rs +++ b/src/uu/dd/src/blocks.rs @@ -39,11 +39,8 @@ fn block(buf: &[u8], cbs: usize, sync: bool, rstat: &mut ReadStat) -> Vec(reader: &mut BufReader, stats: &mut Stats, settings: &Settings break; } - if line.last().copied() == Some(b'\n') { - line.pop(); - } + let _ = line.pop_if(|byte| *byte == b'\n'); if line.is_empty() { stats.consecutive_empty_lines += 1; diff --git a/src/uu/paste/src/paste.rs b/src/uu/paste/src/paste.rs index ef411eac072..3d3fc3ffdab 100644 --- a/src/uu/paste/src/paste.rs +++ b/src/uu/paste/src/paste.rs @@ -273,11 +273,7 @@ fn parse_delimiters(delimiters: &OsString) -> UResult]>> { } fn remove_trailing_line_ending_byte(line_ending_byte: u8, output: &mut Vec) { - if let Some(&byte) = output.last() { - if byte == line_ending_byte { - assert_eq!(output.pop(), Some(line_ending_byte)); - } - } + let _ = output.pop_if(|byte| *byte == line_ending_byte); } enum DelimiterState<'a> { diff --git a/src/uu/shuf/src/shuf.rs b/src/uu/shuf/src/shuf.rs index 757de639bc3..70983520f5e 100644 --- a/src/uu/shuf/src/shuf.rs +++ b/src/uu/shuf/src/shuf.rs @@ -276,9 +276,7 @@ fn split_seps(data: &[u8], sep: u8) -> Vec<&[u8]> { let predicted_capacity = data.len() / PREDICTED_LINE_LENGTH; let mut elements = Vec::with_capacity(predicted_capacity); elements.extend(data.split(|&b| b == sep)); - if elements.last().is_some_and(|e| e.is_empty()) { - elements.pop(); - } + let _ = elements.pop_if(|e| e.is_empty()); elements } diff --git a/src/uu/uniq/src/uniq.rs b/src/uu/uniq/src/uniq.rs index 6f324929cc3..109e49d6224 100644 --- a/src/uu/uniq/src/uniq.rs +++ b/src/uu/uniq/src/uniq.rs @@ -247,9 +247,7 @@ impl Uniq { if bytes_read == 0 { return Ok(false); } - if buffer.last().is_some_and(|last| *last == line_terminator) { - buffer.pop(); - } + let _ = buffer.pop_if(|last| *last == line_terminator); Ok(true) }