pub mod commands;
use clap::{Args, Subcommand};
#[derive(Args)]
pub struct RoboticsArgs {
#[command(subcommand)]
cmd: RoboticsSubcommand,
}
#[derive(Subcommand)]
enum RoboticsSubcommand {
Validate(commands::validate::ValidateArgs),
Audit(commands::audit::AuditArgs),
Verify(commands::verify::VerifyArgs),
AuditGaps(commands::audit_gaps::AuditGapsArgs),
Inspect(commands::inspect::InspectArgs),
Profile(commands::profile_cmd::ProfileArgs),
Keygen(commands::keygen::KeygenArgs),
Intent(commands::intent::IntentArgs),
Differential(commands::differential::DifferentialArgs),
VerifyPackage(commands::verify_package::VerifyPackageArgs),
Compliance(commands::compliance::ComplianceArgs),
Bench(commands::bench::BenchArgs),
Transfer(commands::transfer::TransferArgs),
VerifySelf,
Adversarial(commands::adversarial::AdversarialArgs),
Assemble(commands::assemble::AssembleArgs),
Campaign(commands::campaign::CampaignArgs),
Generate15m(commands::generate_15m::Generate15mArgs),
ValidateProfiles(commands::validate_profiles::ValidateProfilesArgs),
Eval(commands::eval::EvalArgs),
Diff(commands::diff::DiffArgs),
Serve(commands::serve::ServeArgs),
Fleet(commands::fleet::FleetArgs),
}
pub fn run(args: RoboticsArgs) -> i32 {
match args.cmd {
RoboticsSubcommand::Validate(a) => commands::validate::run(&a),
RoboticsSubcommand::Audit(a) => commands::audit::run(&a),
RoboticsSubcommand::Verify(a) => commands::verify::run(&a),
RoboticsSubcommand::AuditGaps(a) => commands::audit_gaps::run(&a),
RoboticsSubcommand::Inspect(a) => commands::inspect::run(&a),
RoboticsSubcommand::Profile(a) => commands::profile_cmd::run(&a),
RoboticsSubcommand::Keygen(a) => commands::keygen::run(&a),
RoboticsSubcommand::Intent(a) => commands::intent::run(&a),
RoboticsSubcommand::Differential(a) => commands::differential::run(&a),
RoboticsSubcommand::VerifyPackage(a) => commands::verify_package::run(&a),
RoboticsSubcommand::Compliance(a) => commands::compliance::run(&a),
RoboticsSubcommand::Bench(a) => commands::bench::run(&a),
RoboticsSubcommand::Transfer(a) => commands::transfer::run(&a),
RoboticsSubcommand::VerifySelf => commands::verify_self::run(),
RoboticsSubcommand::Adversarial(a) => commands::adversarial::run(&a),
RoboticsSubcommand::Assemble(a) => commands::assemble::run(&a),
RoboticsSubcommand::Campaign(a) => commands::campaign::run(&a),
RoboticsSubcommand::Generate15m(a) => commands::generate_15m::run(&a),
RoboticsSubcommand::ValidateProfiles(a) => commands::validate_profiles::run(&a),
RoboticsSubcommand::Eval(a) => commands::eval::run(&a),
RoboticsSubcommand::Diff(a) => commands::diff::run(&a),
RoboticsSubcommand::Serve(a) => commands::serve::run(&a),
RoboticsSubcommand::Fleet(a) => commands::fleet::run(&a),
}
}