aboutsummaryrefslogtreecommitdiff
path: root/src/builder
diff options
context:
space:
mode:
Diffstat (limited to 'src/builder')
-rw-r--r--src/builder/create_embed.rs25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/builder/create_embed.rs b/src/builder/create_embed.rs
index f420a8c..24a7513 100644
--- a/src/builder/create_embed.rs
+++ b/src/builder/create_embed.rs
@@ -164,26 +164,29 @@ impl CreateEmbed {
CreateEmbed(self.0)
}
- /// Set the image associated with the embed. This only supports HTTP(S).
- pub fn image(mut self, url: &str) -> Self {
- let image = json!({
+ fn url_object(mut self, name: &'static str, url: &str) -> Self {
+ let obj = json!({
"url": url.to_string()
});
- self.0.insert("image", image);
+ self.0.insert(name, obj);
CreateEmbed(self.0)
}
- /// Set the thumbnail of the embed. This only supports HTTP(S).
- pub fn thumbnail(mut self, url: &str) -> Self {
- let thumbnail = json!({
- "url": url.to_string(),
- });
+ /// Set the image associated with the embed. This only supports HTTP(S).
+ pub fn image(self, url: &str) -> Self {
+ self.url_object("image", url)
+ }
- self.0.insert("thumbnail", thumbnail);
+ /// Set the video associated with the embed. This only supports HTTP(S).
+ pub fn video(self, url: &str) -> Self {
+ self.url_object("video", url)
+ }
- CreateEmbed(self.0)
+ /// Set the thumbnail of the embed. This only supports HTTP(S).
+ pub fn thumbnail(self, url: &str) -> Self {
+ self.url_object("thumbnail", url)
}
/// Set the timestamp.