use clap::Parser;
use std::path::PathBuf;
#[derive(Parser, Debug)]
#[command(name = "mandible", version, about, long_about = None)]
pub struct Cli {
pub tool: Option<String>,
#[arg(long, value_name = "TOOL")]
pub doctor: Option<String>,
#[arg(long, value_name = "TOOL")]
pub report: Option<String>,
#[arg(long, value_name = "SHELL")]
pub completions: Option<clap_complete::Shell>,
#[arg(long, value_name = "SEED")]
pub review: Option<u64>,
#[arg(long, default_value = "audit")]
pub audit_dir: PathBuf,
}
impl Cli {
pub fn target_tool(&self) -> Option<&str> {
self.report
.as_deref()
.or(self.doctor.as_deref())
.or(self.tool.as_deref())
}
}