helix/dna/cmd/
optimizer.rs

1use clap::Args;
2use std::path::PathBuf;
3
4#[derive(Args)]
5pub struct OptimizeArgs {
6    /// Target directory to analyze (defaults to current directory)
7    #[arg(short, long)]
8    input: Option<PathBuf>,
9
10    /// Output file path (defaults to stdout if not specified)
11    #[arg(short, long)]
12    output: Option<PathBuf>,
13
14    /// Optimize (defaults to 3)
15    #[arg(short = 'O', long, default_value = "3")]
16    level: u8,
17}
18
19pub fn run(args: OptimizeArgs) -> anyhow::Result<()> {
20    let input = args.input.unwrap_or_else(|| PathBuf::from("."));
21    let output = args.output.unwrap_or_else(|| PathBuf::from("."));
22    let level = args.level;
23    println!("Optimize command: input={}, output={}, level={}", input.display(), output.display(), level);
24    Ok(())
25}