diff options
-rw-r--r-- | src/main.rs | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs index e7a11a9..963a510 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,3 +1,37 @@ +extern crate getopts; + +use getopts::Options; + +use std::env; +use std::process::exit; + +fn print_usage(opts: Options) { + let brief = "usage: meetup-find-events-rss"; + print!("{}", opts.usage(&brief)); +} + fn main() { - println!("Hello, world!"); + let args: Vec<String> = env::args().collect(); + + let mut opts = Options::new(); + opts.optopt( + "", + "meetup-api-token", + "Meetup.com API token (required)", + "TOKEN" + ); + opts.optflag("h", "help", "print this help menu"); + + let opt_matches = match opts.parse(&args[1..]) { + Ok(m) => m, + Err(f) => { + eprint!("meetup-find-events-rss: error: {}", f.to_string()); + exit(1); + }, + }; + + if opt_matches.opt_present("h") { + print_usage(opts); + return; + } } |