From 0d6b53bc3eb1a7f7480391b80d4bb49dc92b376f Mon Sep 17 00:00:00 2001 From: Johannes Altmanninger Date: Sat, 18 Feb 2023 08:11:05 +0100 Subject: [PATCH] Address clippy lints We want to keep the cast because tv_sec is not always 64 bits, see b5ff175b4 (Fix timer.rs cross-platform compilation, 2023-02-14). It would be nice to avoid the clippy exemption, perhaps using something like #[cfg(target_pointer_width = "32")] let seconds = val.tv_sec as i64; #[cfg(not(target_pointer_width = "32"))] let seconds = val.tv_sec; but I'm not sure if "target_pointer_width" is the right criteria. --- fish-rust/src/nix.rs | 1 + fish-rust/src/timer.rs | 40 +++++++++++++++++++--------------------- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/fish-rust/src/nix.rs b/fish-rust/src/nix.rs index e7b0bda8a..f97449933 100644 --- a/fish-rust/src/nix.rs +++ b/fish-rust/src/nix.rs @@ -2,6 +2,7 @@ use std::time::Duration; +#[allow(clippy::unnecessary_cast)] pub const fn timeval_to_duration(val: &libc::timeval) -> Duration { let micros = val.tv_sec as i64 * (1E6 as i64) + val.tv_usec as i64; Duration::from_micros(micros as u64) diff --git a/fish-rust/src/timer.rs b/fish-rust/src/timer.rs index 5dc17eb43..d58a6ef50 100644 --- a/fish-rust/src/timer.rs +++ b/fish-rust/src/timer.rs @@ -137,7 +137,7 @@ pub fn get_delta(t1: &TimerSnapshot, t2: &TimerSnapshot, verbose: bool) -> Strin let mut output = String::new(); if !verbose { - output += &"\n_______________________________"; + output += "\n_______________________________"; output += &format!("\nExecuted in {:6.2} {}", wall_time, wall_unit.long_name()); output += &format!("\n usr time {:6.2} {}", usr_time, cpu_unit.long_name()); output += &format!("\n sys time {:6.2} {}", sys_time, cpu_unit.long_name()); @@ -158,17 +158,15 @@ pub fn get_delta(t1: &TimerSnapshot, t2: &TimerSnapshot, verbose: bool) -> Strin let fish_unit = fish_unit.short_name(); let child_unit = child_unit.short_name(); - output += &"\n________________________________________________________"; + output += "\n________________________________________________________"; output += &format!( "\nExecuted in {wall_time:6.2} {wall_unit: Unit { } const fn short_name(&self) -> &'static str { - match self { - &Unit::Minutes => "mins", - &Unit::Seconds => "secs", - &Unit::Millis => "millis", - &Unit::Micros => "micros", + match *self { + Unit::Minutes => "mins", + Unit::Seconds => "secs", + Unit::Millis => "millis", + Unit::Micros => "micros", } } const fn long_name(&self) -> &'static str { - match self { - &Unit::Minutes => "minutes", - &Unit::Seconds => "seconds", - &Unit::Millis => "milliseconds", - &Unit::Micros => "microseconds", + match *self { + Unit::Minutes => "minutes", + Unit::Seconds => "seconds", + Unit::Millis => "milliseconds", + Unit::Micros => "microseconds", } } fn convert_micros(&self, micros: i64) -> f64 { - match self { - &Unit::Minutes => micros as f64 / 1.0E6 / 60.0, - &Unit::Seconds => micros as f64 / 1.0E6, - &Unit::Millis => micros as f64 / 1.0E3, - &Unit::Micros => micros as f64 / 1.0, + match *self { + Unit::Minutes => micros as f64 / 1.0E6 / 60.0, + Unit::Seconds => micros as f64 / 1.0E6, + Unit::Millis => micros as f64 / 1.0E3, + Unit::Micros => micros as f64 / 1.0, } } }