From 6ea4d1f33e158407a1a0b51f210461d698513300 Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Fri, 25 Jul 2025 15:58:10 +0200 Subject: Apply suggestions from clippy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Miquel Sabaté Solà --- crates/cli/src/main.rs | 87 ++++++++++++++++++++++---------------------------- 1 file changed, 39 insertions(+), 48 deletions(-) (limited to 'crates/cli/src/main.rs') diff --git a/crates/cli/src/main.rs b/crates/cli/src/main.rs index 78d094d..239891e 100644 --- a/crates/cli/src/main.rs +++ b/crates/cli/src/main.rs @@ -23,59 +23,50 @@ fn help() { fn main() { let mut args = std::env::args(); - let nargs = std::env::args().count(); - let mut count = 1; + let nargs = args.len(); // Skip command name. args.next(); - // And iterate over the arguments. - while let Some(arg) = args.next() { - count += 1; - - match arg.as_str() { - "-h" | "--help" => { - if nargs > count { - println!( - "warning: arguments passed the '{}' flag will be ignored.", - arg.as_str() - ); - } - help(); - std::process::exit(0); - } - "-v" | "--version" => { - if nargs > count { - println!( - "warning: arguments passed the '{}' flag will be ignored.", - arg.as_str() - ); + match args.next() { + Some(command_flag) => { + match command_flag.as_str() { + "-h" | "--help" => { + if nargs > 2 { + println!("warning: arguments passed the 'help' flag will be ignored.\n"); + } + help(); + std::process::exit(0); + }, + "-v" | "--version" => { + if nargs > 2 { + println!("warning: arguments passed the 'version' flag will be ignored.\n"); + } + println!("mihi {VERSION}"); + std::process::exit(0); + }, + "init" => { + let rest: Vec = args.collect(); + init::run(rest); + }, + "nuke" => { + let rest: Vec = args.collect(); + nuke::run(rest); + }, + "words" => { + let rest: Vec = args.collect(); + words::run(rest); + }, + "run" => { + let rest: Vec = args.collect(); + run::run(rest); + }, + _ => { + println!("error: unknown flag or command: '{command_flag}'"); + std::process::exit(1); } - println!("mihi {}", VERSION); - std::process::exit(0); - } - "init" => { - let rest: Vec = args.collect(); - return init::run(rest); - } - "nuke" => { - let rest: Vec = args.collect(); - return nuke::run(rest); } - "words" => { - let rest: Vec = args.collect(); - return words::run(rest); - } - "run" => { - let rest: Vec = args.collect(); - return run::run(rest); - } - _ => { - println!("error: unknown flag or command: '{}'", arg.as_str()); - std::process::exit(1); - } - } + }, + None => run::run(Vec::new()) } - - run::run(Vec::new()); } -- cgit v1.2.3