pub enum Mailer {
Log,
Capture(Arc<Mutex<Vec<Email>>>),
Smtp(Arc<SmtpMailer>),
}Variants§
Log
Prints every message to the log.
Capture(Arc<Mutex<Vec<Email>>>)
Keeps every message in memory, for tests.
Smtp(Arc<SmtpMailer>)
Sends through an SMTP server.
Implementations§
Source§impl Mailer
impl Mailer
pub fn capture() -> (Mailer, Arc<Mutex<Vec<Email>>>)
Sourcepub fn from_config(
smtp_url: Option<&str>,
from: &str,
) -> Result<Mailer, MailError>
pub fn from_config( smtp_url: Option<&str>, from: &str, ) -> Result<Mailer, MailError>
The mailer for SMTP_URL (smtps://user:pass@host:465, smtp://host:587?tls=required);
no URL means the log mailer. from is the MAIL_FROM sender, e.g.
CodoSEO <hello@codoseo.com>.
pub async fn send(&self, email: Email) -> Result<(), MailError>
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Mailer
impl !UnwindSafe for Mailer
impl Freeze for Mailer
impl Send for Mailer
impl Sync for Mailer
impl Unpin for Mailer
impl UnsafeUnpin for Mailer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more