feat: add a function to the argparser so we can stop repeating

This commit is contained in:
Teesh 2025-03-24 14:54:59 +02:00
parent 85e1dac2cf
commit 01c7a889db
3 changed files with 7 additions and 7 deletions

View file

@ -1,18 +1,16 @@
use boxutils::args::ArgParser;
use boxutils::commands::Command;
use std::env;
use std::fs;
pub struct Mkdir;
impl Command for Mkdir {
fn execute(&self) {
let raw_args: Vec<String> = env::args().collect::<Vec<_>>();
let args = ArgParser::builder()
.add_flag("-p")
.add_flag("--parents")
.add_flag("--help")
.parse("mkdir", raw_args);
.parse_args("mkdir");
if args.get_flag("--help") {
println!("Usage: mkdir [DIR1] [DIR2] etc. pp. [-p, --parents]");

View file

@ -1,18 +1,16 @@
use boxutils::args::ArgParser;
use boxutils::commands::Command;
use num_cpus::{get, get_physical};
use std::env;
use num_cpus::get;
pub struct Nproc;
impl Command for Nproc {
fn execute(&self) {
let raw_args = env::args().collect::<Vec<_>>();
let args = ArgParser::builder()
.add_flag("--help")
.add_flag("--ignore")
.add_flag("--all")
.parse("nproc", raw_args);
.parse_args("nproc");
let mut ignore: u64 = 0;
let mut all = false;
if args.get_flag("--help") {

View file

@ -111,6 +111,10 @@ impl ArgParserBuilder {
normal_args,
}
}
pub fn parse_args(self, program_name: &str) -> ArgParser {
self.parse(program_name, std::env::args().collect())
}
}
#[cfg(test)]