diff --git a/libimagtimeui/Cargo.toml b/libimagtimeui/Cargo.toml index 21a4bbb8..f4ea5efa 100644 --- a/libimagtimeui/Cargo.toml +++ b/libimagtimeui/Cargo.toml @@ -4,6 +4,7 @@ version = "0.1.0" authors = ["Matthias Beyer "] [dependencies] +clap = "2.1.1" lazy_static = "0.1" log = "0.3" chrono = "0.2" diff --git a/libimagtimeui/src/cli.rs b/libimagtimeui/src/cli.rs new file mode 100644 index 00000000..86a69f5b --- /dev/null +++ b/libimagtimeui/src/cli.rs @@ -0,0 +1,23 @@ +use clap::{Arg, ArgMatches, App, SubCommand}; + +pub fn build_datetime_cli_component<'a, 'b>() -> Arg<'a, 'b> { + Arg::with_name(datetime_arg_name()) + .short(datetime_arg_short()) + .long(datetime_arg_long()) + .takes_value(true) + .multiple(false) + .help("Specify a DateTime") +} + +pub fn datetime_arg_name() -> &'static str { + "datetime" +} + +pub fn datetime_arg_long() -> &'static str { + "datetime" +} + +pub fn datetime_arg_short() -> &'static str { + "T" +} + diff --git a/libimagtimeui/src/lib.rs b/libimagtimeui/src/lib.rs index cb24a50f..4486eef9 100644 --- a/libimagtimeui/src/lib.rs +++ b/libimagtimeui/src/lib.rs @@ -1,10 +1,12 @@ extern crate chrono; +extern crate clap; extern crate regex; #[macro_use] extern crate lazy_static; #[macro_use] extern crate log; #[macro_use] extern crate libimagerror; +pub mod cli; pub mod date; pub mod datetime; pub mod parse;