use bpaf::*;
#[derive(Debug, Clone)]
#[allow(dead_code)]
struct Opts {
width: usize,
height: usize,
}
fn main() {
let width = short('w').argument("WIDTH").from_str().fallback(10);
let height = short('h').argument("HEIGHT").from_str().fallback(10);
let parser = construct!(Opts { width, height });
let cmd = positional_if("", |s| s == "cmd").optional().hide();
let combined_parser = construct!(cmd, parser).map(|x| x.1);
let opts = Info::default()
.descr("Usual help message here")
.for_parser(combined_parser)
.run();
println!("{:?}", opts);
}