caesura/cli/
command_arguments.rsuse clap::Subcommand;
use crate::options::verify_options::VerifyOptions;
use crate::options::{
BatchOptions, FileOptions, RunnerOptions, SharedOptions, SpectrogramOptions, TargetOptions,
UploadOptions,
};
#[derive(Subcommand, Debug, Clone)]
pub enum CommandArguments {
Config,
Batch {
#[command(flatten)]
shared: SharedOptions,
#[command(flatten)]
target: TargetOptions,
#[command(flatten)]
verify: VerifyOptions,
#[command(flatten)]
runner: RunnerOptions,
#[command(flatten)]
spectrogram: SpectrogramOptions,
#[command(flatten)]
file: FileOptions,
#[command(flatten)]
batch: BatchOptions,
},
Spectrogram {
#[command(flatten)]
shared: SharedOptions,
#[command(flatten)]
spectrogram: SpectrogramOptions,
#[command(flatten)]
runner: RunnerOptions,
},
Transcode {
#[command(flatten)]
shared: SharedOptions,
#[command(flatten)]
target: TargetOptions,
#[command(flatten)]
file: FileOptions,
#[command(flatten)]
runner: RunnerOptions,
},
Upload {
#[command(flatten)]
shared: SharedOptions,
#[command(flatten)]
target: TargetOptions,
#[command(flatten)]
upload: UploadOptions,
},
Verify {
#[command(flatten)]
shared: SharedOptions,
#[command(flatten)]
target: TargetOptions,
#[command(flatten)]
verify: VerifyOptions,
},
}