summaryrefslogtreecommitdiff
path: root/src/main.rs
blob: eb71ec698b096f2f4d96db15a3ece5e8895b2cc4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#[macro_use]
extern crate clap;
use clap::App;

fn main() {
    let yaml = load_yaml!("icktool.yaml");
    let matches = App::from_yaml(yaml).get_matches();

    if let Some(api) = matches.value_of("api") {
        println!("api: {}", api);
    }

    let code = match matches.subcommand_name() {
        Some("version") => version(),
        Some("status") => status(),
        None => none(),
        _ => unknown(),
    };
    std::process::exit(code);
}

fn none() -> i32 {
    eprintln!("No subcommand was given");
    1
}

fn unknown() -> i32 {
    eprintln!("Unknown command");
    1
}

fn version() -> i32 {
    println!("status requested");
    0
}

fn status() -> i32 {
    println!("status requested");
    0
}