#[non_exhaustive]pub struct OutgoingAttachment {
pub filename: String,
pub content_type: String,
pub data: Vec<u8>,
pub is_inline: bool,
pub content_id: Option<String>,
}Expand description
An attachment to include in an outgoing email.
§References
- RFC 2183 (Content-Disposition: attachment / inline)
- RFC 2392 (Content-ID)
- RFC 2045 (Content-Transfer-Encoding: base64)
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.filename: StringFilename for the Content-Disposition header.
content_type: StringMIME content type (e.g., "application/pdf").
data: Vec<u8>Raw file data — will be base64-encoded in the message.
is_inline: boolWhen true, the part uses Content-Disposition: inline instead of
attachment (RFC 2183 Section 2). Typically used for images
embedded in HTML via cid: URLs.
content_id: Option<String>Optional Content-ID header value (RFC 2392). Should be a bare
addr-spec (e.g., "image001@example.com"); the builder wraps it
in angle brackets. Required for HTML-embedded inline images that
are referenced as <img src="cid:image001@example.com">.
Implementations§
Source§impl OutgoingAttachment
impl OutgoingAttachment
Sourcepub fn new(
filename: impl Into<String>,
content_type: impl Into<String>,
data: impl Into<Vec<u8>>,
) -> Self
pub fn new( filename: impl Into<String>, content_type: impl Into<String>, data: impl Into<Vec<u8>>, ) -> Self
Creates a regular (non-inline) attachment.
§References
- RFC 2183 (Content-Disposition: attachment)
- RFC 2045 (Content-Transfer-Encoding: base64)
Sourcepub fn inline(
filename: impl Into<String>,
content_type: impl Into<String>,
data: impl Into<Vec<u8>>,
content_id: impl Into<String>,
) -> Self
pub fn inline( filename: impl Into<String>, content_type: impl Into<String>, data: impl Into<Vec<u8>>, content_id: impl Into<String>, ) -> Self
Creates an inline attachment with a Content-ID for embedding in HTML.
Inline attachments use Content-Disposition: inline (RFC 2183
Section 2) and are referenced by the HTML body via cid: URLs
(RFC 2392).
§References
- RFC 2183 Section 2 (Content-Disposition: inline)
- RFC 2392 (Content-ID)
Trait Implementations§
Source§impl Clone for OutgoingAttachment
impl Clone for OutgoingAttachment
Source§fn clone(&self) -> OutgoingAttachment
fn clone(&self) -> OutgoingAttachment
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more