From 12bdf437216d6a0070c9c69f95f93e65fa1914bf Mon Sep 17 00:00:00 2001 From: Bel LaPointe <153096461+breel-render@users.noreply.github.com> Date: Wed, 21 Feb 2024 14:28:50 -0700 Subject: [PATCH] accept --precision to change logging --- src/main.rs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index 4806b37..357baa9 100644 --- a/src/main.rs +++ b/src/main.rs @@ -28,6 +28,9 @@ struct Flags { #[arg(short = 'v', long = "verbose")] verbose: bool, + + #[arg(short = 'p', long = "precision")] + precision: Option, } fn main() { @@ -36,7 +39,7 @@ fn main() { clock(&flags.f, &flags.clock).unwrap(); add(&flags.f, &flags.add, &flags.tag).unwrap(); - log(&flags.f, &flags.log, &flags.since, &flags.verbose).unwrap(); + log(&flags.f, &flags.log, &flags.since, &flags.verbose, &flags.precision.unwrap_or(0)).unwrap(); } fn clock(f: &String, clock: &bool) -> Result<(), String> { @@ -73,7 +76,7 @@ struct LogX { x: String, } -fn log(f: &String, enabled: &bool, since: &Option, verbose: &bool) -> Result<(), String> { +fn log(f: &String, enabled: &bool, since: &Option, verbose: &bool, precision: &u32) -> Result<(), String> { if !enabled { return Ok(()); } @@ -140,7 +143,11 @@ fn log(f: &String, enabled: &bool, since: &Option, verbose: &bool) -> Re for log in result { for x in log.xs { if x.x.len() > 0 { - println!("{} ({:.0}) {} ({:.1})", log.t, log.d, x.x, x.d); + match precision { + 0 => println!("{} ({:.0}) {} ({:.1})", log.t, log.d, x.x, x.d), + 1 => println!("{} ({:.1}) {} ({:.2})", log.t, log.d, x.x, x.d), + _ => println!("{} ({:.2}) {} ({:.3})", log.t, log.d, x.x, x.d), + } } } }