use clap::Parser; mod commands; fn main() -> anyhow::Result<()> { let args: Args = Args::parse(); match args.cmd { Subcommands::GitToSh { count, verbatim, output_dir, repo_dir, name, committish, patterns, } => commands::git_to_sh( &output_dir, &repo_dir, &name, &committish, std::io::stdout(), commands::git_to_sh::Options { patterns, verbatim, max_count: count, }, ), Subcommands::BlameCopyRoyal { dry_run, worktree_dir: worktree_root, destination_dir, asset_dir, file, verbatim, } => commands::blame_copy_royal( dry_run, &worktree_root, destination_dir, asset_dir, &file, commands::blame_copy_royal::Options { verbatim }, ), Subcommands::CopyRoyal { dry_run, worktree_dir: worktree_root, destination_dir, patterns, } => commands::copy_royal(dry_run, &worktree_root, destination_dir, patterns), Subcommands::CreateDiffCases { dry_run, sliders_file, worktree_dir, destination_dir, count, asset_dir, } => commands::create_diff_cases(dry_run, sliders_file, &worktree_dir, destination_dir, count, asset_dir), Subcommands::CheckMode {} => commands::check_mode(), Subcommands::Env {} => commands::env(), }} mod args;use args::{Args, Subcommands}; #[cfg(test)]mod tests { use super::*; #[test] fn clap() { use clap::CommandFactory; Args::command().debug_assert(); }}
use clap::Parser;
mod commands;
fn main() -> anyhow::Result<()> {
let args: Args = Args::parse();
match args.cmd {
Subcommands::GitToSh {
count,
verbatim,
output_dir,
repo_dir,
name,
committish,
patterns,
} => commands::git_to_sh(
&output_dir,
&repo_dir,
&name,
&committish,
std::io::stdout(),
commands::git_to_sh::Options {
patterns,
verbatim,
max_count: count,
},
),
Subcommands::BlameCopyRoyal {
dry_run,
worktree_dir: worktree_root,
destination_dir,
asset_dir,
file,
verbatim,
} => commands::blame_copy_royal(
dry_run,
&worktree_root,
destination_dir,
asset_dir,
&file,
commands::blame_copy_royal::Options { verbatim },
),
Subcommands::CopyRoyal {
dry_run,
worktree_dir: worktree_root,
destination_dir,
patterns,
} => commands::copy_royal(dry_run, &worktree_root, destination_dir, patterns),
Subcommands::CreateDiffCases {
dry_run,
sliders_file,
worktree_dir,
destination_dir,
count,
asset_dir,
} => commands::create_diff_cases(dry_run, sliders_file, &worktree_dir, destination_dir, count, asset_dir),
Subcommands::CheckMode {} => commands::check_mode(),
Subcommands::Env {} => commands::env(),
}
}
mod args;
use args::{Args, Subcommands};
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn clap() {
use clap::CommandFactory;
Args::command().debug_assert();
}
}