pub struct SmtpConfig {
pub host: String,
pub port: u16,
pub tls_mode: TlsMode,
pub username: String,
pub password: String,
pub from_address: String,
pub from_name: Option<String>,
}Expand description
SMTP transport configuration. None if any required env var
is missing; the caller treats None as “email channel
unavailable” and logs accordingly.
Fields§
§host: String§port: u16§tls_mode: TlsMode§username: String§password: String§from_address: String§from_name: Option<String>Implementations§
Source§impl SmtpConfig
impl SmtpConfig
Sourcepub fn from_env() -> Option<Self>
pub fn from_env() -> Option<Self>
Read from environment. Returns None if any required
variable is missing.
Sourcepub fn log_startup(config: Option<&SmtpConfig>)
pub fn log_startup(config: Option<&SmtpConfig>)
Log the configuration status at startup. If None, log
a warning so an operator notices in dev/staging.
Trait Implementations§
Source§impl Clone for SmtpConfig
impl Clone for SmtpConfig
Source§fn clone(&self) -> SmtpConfig
fn clone(&self) -> SmtpConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SmtpConfig
impl RefUnwindSafe for SmtpConfig
impl Send for SmtpConfig
impl Sync for SmtpConfig
impl Unpin for SmtpConfig
impl UnsafeUnpin for SmtpConfig
impl UnwindSafe for SmtpConfig
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
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