linux-taskstats 0.7.0

Rust interface to Linux taskstats
Documentation
use clap::{Arg, ArgAction, Command};
use linux_taskstats::format::DefaultHeaderFormat;

mod cmd;

fn main() {
    let matches = Command::new("A command line interface to Linux taskstats")
        .arg(
            Arg::new("verbose")
                .short('v')
                .long("verfbose")
                .action(ArgAction::SetTrue),
        )
        .arg(
            Arg::new("show-delays")
                .short('d')
                .long("delay")
                .action(ArgAction::SetTrue),
        )
        .arg(
            Arg::new("TIDS")
                .index(1)
                .num_args(1..)
                .action(ArgAction::Append),
        )
        .get_matches();

    let tids: Vec<_> = matches
        .get_many::<u32>("TIDS")
        .unwrap()
        .map(|x| *x)
        .collect();

    let config = cmd::Config {
        tids,
        verbose: matches.contains_id("verbose"),
        show_delays: matches.contains_id("show-delays"),
        header_format: DefaultHeaderFormat::new(),
    };
    cmd::taskstats_main(config);
}