use clap::Parser;
#[derive(Parser, Debug)]
#[command(version, about)]
pub struct Cli {
#[arg(short, long, default_value_t = 6, value_parser = clap::value_parser!(u8).range(1..=16))]
pub(crate) colors: u8,
#[arg(short, long, default_value_t = 4)]
pub(crate) slots: u8,
#[arg(short, long, default_value_t = 12)]
pub(crate) tries: u8,
#[arg(short, long, default_value_t = true)]
pub(crate) prevent_duplicates: bool,
#[arg(short, long, default_value_t = false)]
pub(crate) debug: bool,
#[arg(short, long, default_value_t = false)]
pub(crate) verbose: bool,
#[arg(short('a'), long("answer"))]
pub(crate) combination_answer: Option<String>,
}
impl Cli {
pub fn initialize_and_parse() -> Self {
let cli = Cli::parse();
cli
}
}