pub struct Attachment {
pub description: Option<String>,
pub file: Vec<u8>,
pub filename: String,
pub id: u64,
}
Expand description
Attachments used in messages.
§Examples
Create an attachment of a short JSON blob describing a cat with a description for screen readers:
use twilight_model::http::attachment::Attachment;
let filename = "twilight_sparkle.json".to_owned();
let file_content = br#"{
"best_friend": "Spike",
"cutie_mark": "sparkles",
"name": "Twilight Sparkle"
}"#
.to_vec();
let id = 1;
let mut attachment = Attachment::from_bytes(filename, file_content, id);
attachment.description("Raw data about Twilight Sparkle".to_owned());
Fields§
§description: Option<String>
Description of the attachment, useful for screen readers and users requiring alt text.
file: Vec<u8>
Content of the file.
filename: String
Name of the file.
Examples may be twilight_sparkle.png
, cat.jpg
, or logs.txt
.
id: u64
Unique ID of the attachment in the message.
While attachment IDs can be the same as attachments in other messages, they must be unique within the same message. Attachment IDs don’t need to be in any particular format; for example, IDs of 0, 100, the current timestamp, and so on are all valid.
Implementations§
Source§impl Attachment
impl Attachment
Sourcepub const fn from_bytes(filename: String, file: Vec<u8>, id: u64) -> Self
pub const fn from_bytes(filename: String, file: Vec<u8>, id: u64) -> Self
Create an attachment from a filename and bytes.
§Examples
Create an attachment with a grocery list named “grocerylist.txt”:
use twilight_model::http::attachment::Attachment;
let filename = "grocerylist.txt".to_owned();
let file_content = b"Apples\nGrapes\nLemonade".to_vec();
let id = 1;
let attachment = Attachment::from_bytes(filename, file_content, id);
Sourcepub fn description(&mut self, description: String)
pub fn description(&mut self, description: String)
Set the description of the attachment.
Attachment descriptions are useful for those requiring screen readers and are displayed as alt text.
Trait Implementations§
Source§impl Clone for Attachment
impl Clone for Attachment
Source§fn clone(&self) -> Attachment
fn clone(&self) -> Attachment
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more