diff --git a/src/main.rs b/src/main.rs index 63e1108..ae7a051 100644 --- a/src/main.rs +++ b/src/main.rs @@ -14,29 +14,31 @@ use teloxide::prelude::*; #[tokio::main] async fn main() { let args = Cli::parse(); - let config_path = args.config_path.unwrap_or(format!( - "{}/.config/dsc-tg-forwarder/config.yml", - home::home_dir().unwrap().display() - )); + let config_path = args.config_path.unwrap_or_else(|| { + format!( + "{}/.config/dsc-tg-forwarder/config.yml", + home::home_dir().unwrap().display() + ) + }); let config = parse_config(&config_path); - let discord_token = args.discord_token.unwrap_or( + let discord_token = args.discord_token.unwrap_or_else(|| { config .discord_token - .unwrap_or_else(|| env::var("DISCORD_TOKEN").expect("Discord token wasn't supplied")), - ); + .unwrap_or_else(|| env::var("DISCORD_TOKEN").expect("Discord token wasn't supplied")) + }); - let telegram_token = - args.telegram_token - .unwrap_or(config.telegram_token.unwrap_or_else(|| { - env::var("TELEGRAM_TOKEN").expect("Telegram token wasn't supplied") - })); + let telegram_token = args.telegram_token.unwrap_or_else(|| { + config + .telegram_token + .unwrap_or_else(|| env::var("TELEGRAM_TOKEN").expect("Telegram token wasn't supplied")) + }); - let output_chat_id = - args.output_chat_id - .unwrap_or(config.output_chat_id.unwrap_or_else(|| { - env::var("OUTPUT_CHAT_ID").expect("Output chat id wasn't supplied") - })); + let output_chat_id = args.output_chat_id.unwrap_or_else(|| { + config + .output_chat_id + .unwrap_or_else(|| env::var("OUTPUT_CHAT_ID").expect("Output chat id wasn't supplied")) + }); // Login with a bot token from the environment let client = Client::builder(discord_token) diff --git a/src/utils.rs b/src/utils.rs index d87c753..2ee46ee 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -60,7 +60,7 @@ pub fn format_embed(embed: &Embed) -> String { format!( "[{}]({})\n", title.escape_markdown_v2(), - embed.url.to_owned().unwrap_or("".to_string()) + embed.url.to_owned().unwrap_or_else(|| "".to_string()) ) });