1use std::{env, process};
2
3mod db;
5
6pub mod help;
8
9pub mod list;
11
12pub mod task;
14
15mod util;
17
18pub fn run(args: Vec<String>) {
21 if args.len() < 2 {
23 print_intro();
24 process::exit(0);
25 }
26 let command = args[1].as_str();
28 match command {
29 "help" | "--help" => help::print_help(),
30 "list" => list::execute(args),
31 _ => print_intro(),
32 }
33}
34
35fn print_version() {
37 let (name, version): (String, String) = (
38 env::var("CARGO_PKG_NAME").unwrap_or(String::from("todo")),
39 env::var("CARGO_PKG_VERSION").unwrap_or(String::from("?")),
40 );
41 println!("{name} v{version}");
42}
43
44fn print_intro() {
46 print_version();
47 println!("For help, use --help.");
48}