rsqueue 0.1.0

A Nicer Summary of slurm Command
mod cmd;
mod nodes;
mod partitions;

use clap::{self, Parser};

#[derive(Parser)]
#[command(name = "rsqueue")]
#[command(bin_name = "rsqueue")]
#[command(author = "Yangyang Li <yangyang.li@northwestern.edu>")]
#[command(about = "A wrapper of slurm command that make that looks nicer")]
#[command(version = "1.0")]
enum Rsqueue {
    #[command(about = "Show Nodes Information")]
    Nodes(Nodes),
    #[command(about = "Show Partitions Information")]
    Partitions(Partitions),
}

#[derive(clap::Args)]
#[command(author, version, about, long_about = None)]
struct Nodes {}

#[derive(clap::Args)]
#[command(author, version, about)]
struct Partitions {
    #[arg(long)]
    me: Option<bool>,
}

fn main() {
    match Rsqueue::parse() {
        Rsqueue::Nodes(Nodes {}) => println! {"nodes"},
        Rsqueue::Partitions(Partitions { me }) => {
            let mut partitions = partitions::Partitions::default();
            partitions.update_job_status();
            partitions.print_job_status();
        }
    }
}