Compare
fn send_email(addr: &str, subject: &str, body: &str) -> Result<()>
fn send_email(add: &EmailAddr, subject: &str, body: &str) -> Result<()>
Compare
to In the second case, the edge cases of an empty or invalid email address don't need to be tested, they are statically impossible.