aboutsummaryrefslogtreecommitdiff
path: root/src/mail.rs
diff options
context:
space:
mode:
authorJoris2025-02-06 19:10:54 +0100
committerJoris2025-02-06 19:10:54 +0100
commit2956aa5f5324e4183dbc87f81fbc71fd0f43dbf9 (patch)
tree41673ba3f942367a5548c1f05ef20a5e17bbba79 /src/mail.rs
parentc70e84a1b2aa307363b7b760f9f15b7438b0afba (diff)
Improve String handling
See https://blog.sulami.xyz/posts/string-vs-str/
Diffstat (limited to 'src/mail.rs')
-rw-r--r--src/mail.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mail.rs b/src/mail.rs
index b6db0cd..7017654 100644
--- a/src/mail.rs
+++ b/src/mail.rs
@@ -18,8 +18,8 @@ pub struct Recipient {
pub async fn send(
config: &Config,
recipients: Vec<Recipient>,
- subject: String,
- message: String,
+ subject: &str,
+ message: &str,
) -> bool {
let headers = format_headers(recipients.clone(), subject);
@@ -72,24 +72,24 @@ pub async fn send(
}
}
-fn format_headers(recipients: Vec<Recipient>, subject: String) -> String {
+fn format_headers(recipients: Vec<Recipient>, subject: &str) -> String {
let recipients = recipients
.into_iter()
- .map(|r| format_address(r.name, r.address))
+ .map(|r| format_address(&r.name, &r.address))
.collect::<Vec<String>>()
.join(", ");
format!(
"Date: {}\nFrom: {}\nTo: {}\nSubject: {}",
Utc::now().to_rfc2822(),
- format_address(FROM_NAME.to_string(), FROM_ADDRESS.to_string()),
+ format_address(FROM_NAME, FROM_ADDRESS),
recipients,
subject,
)
}
-fn format_address(name: String, address: String) -> String {
- format!("{} <{}>", name, address)
+fn format_address(name: &str, address: &str) -> String {
+ format!("{name} <{address}>")
}
async fn spawn(mut command: Command, stdin: &[u8]) -> Result<Output, Error> {