extern crate structopt;
#[macro_use]
extern crate structopt_derive;
use structopt::StructOpt;
#[derive(StructOpt, Debug)]
#[structopt(name = "basic")]
struct Opt {
#[structopt(short = "d", long = "debug")]
debug: bool,
#[structopt(short = "v", long = "verbose")]
verbose: u64,
#[structopt(short = "s", long = "speed", default_value = "42")]
speed: f64,
#[structopt(short = "o", long = "output")]
output: String,
#[structopt(short = "c", long = "car")]
car: Option<i32>,
#[structopt(short = "l", long = "level")]
level: Vec<String>,
#[structopt(name = "FILE")]
files: Vec<String>,
}
fn main() {
let opt = Opt::from_args();
println!("{:?}", opt);
}