diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..5b7bb3d --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "finding" +version = "0.1.0" +authors = ["Hatter Jiang "] +edition = "2018" + +[dependencies] +argparse = "0.2.2" +rust_util = { git = "https://github.com/jht5945/rust_util" } diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..e65d3c7 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,35 @@ +extern crate argparse; +extern crate rust_util; + +use argparse::{ArgumentParser, StoreTrue, Store}; +use rust_util::*; + +const VERSION: &str = "0.1"; + +fn print_version() { + print!(r#"finding {} +Copyright (C) 2019 Hatter Jiang. +License MIT + +Written by Hatter Jiang +"#, VERSION); +} + +fn main() { + let mut version = false; + let mut huge_file_size = String::from("100M"); + { + let mut ap = ArgumentParser::new(); + ap.set_description("finding - command line find tool."); + ap.refer(&mut huge_file_size).add_option(&["--huge-file"], Store, "Huge file size, default 100M"); + ap.refer(&mut version).add_option(&["-v", "--version"], StoreTrue, "Print version"); + ap.parse_args_or_exit(); + } + + if version { + print_version(); + return; + } + + println!("Hello, world!"); +}