From e5d358477f75b682c78b7d0d06709c9c5f847049 Mon Sep 17 00:00:00 2001 From: Valerie Date: Thu, 22 Aug 2024 13:00:20 -0400 Subject: [PATCH] changed arg parse to use pico-args --- Cargo.toml | 1 + src/main.rs | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 9f38498..e4d84fa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,6 +14,7 @@ path = "src/main.rs" [dependencies] evalexpr = "11.0.0" +pico-args = "0.5.0" termion = "1.5.6" [profile.release] diff --git a/src/main.rs b/src/main.rs index 334f03c..dba1c20 100644 --- a/src/main.rs +++ b/src/main.rs @@ -15,6 +15,7 @@ use evalexpr::{ HashMapContext, Value }; +use pico_args::Arguments; use termion::{ color, style @@ -27,6 +28,8 @@ mod util; pub const VERSION: &str = env!("CARGO_PKG_VERSION"); fn main() { + let args = Arguments::from_env(); + // build eval context let mut context = context_map! { // globals @@ -56,9 +59,10 @@ fn main() { }.unwrap(); // collect args and evaluate if present - let expressions: Vec = env::args().skip(1).collect(); + let expressions = args.finish(); if expressions.len() > 0 { for expression in expressions { + let expression: String = expression.to_string_lossy().into(); match expression.as_str() { "help" => help_text(), _ => do_eval(expression, &mut context)