use email_address::EmailAddress;
pub trait Address {
fn local(&self) -> &str;
fn domain(&self) -> &str;
}
impl Address for EmailAddress {
fn local(&self) -> &str {
EmailAddress::local_part(self)
}
fn domain(&self) -> &str {
EmailAddress::domain(self)
}
}
#[cfg(feature = "lettre")]
impl Address for lettre::Address {
fn local(&self) -> &str {
lettre::Address::user(self)
}
fn domain(&self) -> &str {
lettre::Address::domain(self)
}
}
#[cfg(feature = "lettre")]
impl Address for lettre::message::Mailbox {
fn local(&self) -> &str {
lettre::Address::user(&self.email)
}
fn domain(&self) -> &str {
lettre::Address::domain(&self.email)
}
}