main.rs 475 B

1234567891011121314151617181920212223
  1. use args::Args;
  2. use clap::Parser;
  3. use std::format;
  4. mod args;
  5. mod config;
  6. mod error;
  7. mod ping;
  8. ///# ping入口主函数
  9. fn main() {
  10. let args = Args::parse();
  11. match ping::Ping::new(args.as_config()) {
  12. Ok(pinger) => pinger.run().unwrap_or_else(|e| {
  13. exit(format!("Error on run ping: {}", e));
  14. }),
  15. Err(e) => exit(format!("Error on init: {}", e)),
  16. }
  17. }
  18. fn exit(msg: String) {
  19. eprintln!("{}", msg);
  20. std::process::exit(1);
  21. }