1#![cfg_attr(windows, feature(junction_point))]
2
3mod fs_watcher;
4mod symlink_stress;
5
6use clap::{Parser, Subcommand};
7
8#[derive(Parser)]
16#[command()]
17struct Cli {
18 #[command(subcommand)]
19 command: Commands,
20}
21
22#[derive(Subcommand)]
23enum Commands {
24 FsWatcher(fs_watcher::FsWatcher),
26 SymlinkStress(symlink_stress::SymlinkStress),
28}
29
30#[tokio::main]
31async fn main() -> anyhow::Result<()> {
32 let cli = Cli::parse();
33
34 match cli.command {
35 Commands::FsWatcher(args) => fs_watcher::run(args).await,
36 Commands::SymlinkStress(args) => symlink_stress::run(args).await,
37 }
38}