refactor: extract version info code to a function in `util`
Diff
src/main.rs | 4 +---
src/util.rs | 9 +++++++++
2 files changed, 10 insertions(+), 3 deletions(-)
@@ -15,9 +15,7 @@ const BW_FIELD_KEY_PASSPHRASE: &str = "passphrase";
fn main() -> Result<()> {
let args: util::Cli = util::Cli::parse_args_default_or_exit();
if args.version {
let name = env!("CARGO_PKG_NAME");
let version = env!("CARGO_PKG_VERSION");
println!("{} {}", name, version);
println!("{}", &util::get_version_string()?);
return Ok(());
}
@@ -1,3 +1,5 @@
use std::env;
use anyhow::Result;
use gumdrop::Options;
@@ -18,3 +20,10 @@ pub struct Cli {
#[options(help = "print version and exit")]
pub version: bool,
}
pub fn get_version_string() -> Result<String> {
let name = env!("CARGO_PKG_NAME");
let version = env!("CARGO_PKG_VERSION");
return Ok(format!("{} {}", name, version))
}
\ No newline at end of file