pub mod args; pub mod commands; pub mod meta; pub mod types; pub mod utils; use args::{CLIArgs, Commands}; use clap::Parser; fn main() -> Result<(), Box> { let cli = CLIArgs::parse(); let command = cli.command.to_owned(); match command { Commands::Process(subcommand_args) => { return commands::process::process_command(cli, &subcommand_args); } #[cfg(feature = "command_genhtml")] Commands::Genhtml(subcommand_args) => { return commands::genhtml::genhtml_command(cli, &subcommand_args); } Commands::Transcode(subcommand_args) => { return commands::transcode::transcode_command(cli, &subcommand_args); } Commands::Copy(subcommand_args) => { return commands::copy::copy_command(cli, &subcommand_args); } Commands::Tags(subcommand_args) => { return commands::tags::tags_command(cli, &subcommand_args); } } }