#[non_exhaustive]pub struct Address {
pub email: String,
pub parameters: Option<HashMap<String, Option<String>>>,
pub extra: Map<String, Value>,
}Expand description
SMTP envelope address with optional MAIL FROM / RCPT TO parameters (RFC 8621 §7).
Used in both mailFrom and the elements of rcptTo within an Envelope.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.email: StringThe email address (Mailbox as per RFC 5321 Reverse-path / Forward-path).
parameters: Option<HashMap<String, Option<String>>>Optional SMTP parameters (mail-parameter or rcpt-parameter per RFC 5321).
Each key is a parameter name; the value is the parameter value string, or
None if the parameter takes no value. xtext / unitext encodings are
stripped; JSON string encoding applies.
extra: Map<String, Value>Catch-all for vendor / site / private extension fields not covered by the typed fields above. Preserves unknown fields across deserialize/serialize round-trip per workspace extras-preservation policy (see workspace AGENTS.md).
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Address
impl<'de> Deserialize<'de> for Address
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Address
impl StructuralPartialEq for Address
Auto Trait Implementations§
impl Freeze for Address
impl RefUnwindSafe for Address
impl Send for Address
impl Sync for Address
impl Unpin for Address
impl UnsafeUnpin for Address
impl UnwindSafe for Address
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