1use clap::Parser;
2use std::path::PathBuf;
3
4#[derive(Parser, Debug, Clone)]
7#[command(author, version, about, long_about = None)]
8pub struct Args {
9 #[arg(required = true)]
11 pub input_folder: PathBuf,
12
13 #[arg(short, long, default_value = "concatenated.txt")]
15 pub output_file: PathBuf,
16
17 #[arg(short, long, action = clap::ArgAction::Append)]
19 pub patterns: Option<Vec<String>>,
20
21 #[arg(short, long)]
23 pub clear_file: bool,
24
25 #[arg(short, long, action = clap::ArgAction::Append)]
27 pub exclude_folders: Option<Vec<String>>,
28
29 #[arg(long, action = clap::ArgAction::Append)]
31 pub exclude_extensions: Option<Vec<String>>,
32
33 #[arg(long)]
35 pub max_depth: Option<usize>,
36
37 #[arg(long)]
39 pub hidden: bool,
40
41 #[arg(long, default_value_t = true)]
43 pub no_follow: bool,
44}