use clap::Parser;
use std::path::PathBuf;
#[derive(Parser, Debug)]
#[clap(author, version, about, long_about = None)]
struct Args {
path: Option<PathBuf>,
#[clap(short = 'D', long, action)]
debug: bool,
#[clap(
short = '0',
long,
default_values = ["build","ci","docs","style","refactor","test","chore"]
)]
level0: Vec<String>,
#[clap(short = '1', long, default_values = ["fix","perf"])]
level1: Vec<String>,
#[clap(short = '2', long, default_values = ["feat"])]
level2: Vec<String>,
#[clap(short = '3', long, default_values = ["^.+!$"])]
level3: Vec<String>,
#[clap(long, alias = "release", default_values = ["main"])]
release_branches: Vec<String>,
#[clap(long, alias = "prerelease", default_values = ["main"])]
prerelease_branches: Vec<String>,
#[clap(long, short, action)]
case_sensitive: bool,
}
fn main() {
let args = Args::parse();
let debug = args.debug;
if debug {
println!("Runtime values are {:#?}", &args);
}
}