aboutsummaryrefslogtreecommitdiff
path: root/src/model
diff options
context:
space:
mode:
authoracdenisSK <[email protected]>2017-07-02 14:33:23 +0200
committeracdenisSK <[email protected]>2017-07-02 18:29:29 +0200
commit511ec87280e8ddec6589f48fec8260bf2e598bdb (patch)
tree008846c1531ecd47887abb9623b98a960b1fa808 /src/model
parentAdd a `quit` function` (diff)
downloadserenity-511ec87280e8ddec6589f48fec8260bf2e598bdb.tar.xz
serenity-511ec87280e8ddec6589f48fec8260bf2e598bdb.zip
Fix doc tests
Diffstat (limited to 'src/model')
-rw-r--r--src/model/channel/attachment.rs67
-rw-r--r--src/model/channel/guild_channel.rs79
-rw-r--r--src/model/channel/message.rs8
-rw-r--r--src/model/error.rs45
-rw-r--r--src/model/user.rs119
5 files changed, 175 insertions, 143 deletions
diff --git a/src/model/channel/attachment.rs b/src/model/channel/attachment.rs
index 015c18e..2238174 100644
--- a/src/model/channel/attachment.rs
+++ b/src/model/channel/attachment.rs
@@ -46,52 +46,55 @@ impl Attachment {
/// Download all of the attachments associated with a [`Message`]:
///
/// ```rust,no_run
- /// use serenity::Client;
+ /// use serenity::prelude::*;
+ /// use serenity::model::*;
/// use std::env;
/// use std::fs::File;
/// use std::io::Write;
/// use std::path::Path;
///
- /// let token = env::var("DISCORD_TOKEN").expect("token in environment");
- /// let mut client = Client::new(&token);
+ /// struct Handler;
///
- /// client.on_message(|_, message| {
- /// for attachment in message.attachments {
- /// let content = match attachment.download() {
- /// Ok(content) => content,
- /// Err(why) => {
- /// println!("Error downloading attachment: {:?}", why);
- /// let _ = message.channel_id.say("Error downloading attachment");
///
- /// return;
- /// },
- /// };
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, _: Context, message: Message) {
+ /// for attachment in message.attachments {
+ /// let content = match attachment.download() {
+ /// Ok(content) => content,
+ /// Err(why) => {
+ /// println!("Error downloading attachment: {:?}", why);
+ /// let _ = message.channel_id.say("Error downloading attachment");
///
- /// let mut file = match File::create(&attachment.filename) {
- /// Ok(file) => file,
- /// Err(why) => {
- /// println!("Error creating file: {:?}", why);
- /// let _ = message.channel_id.say("Error creating file");
+ /// return;
+ /// },
+ /// };
///
- /// return;
- /// },
- /// };
+ /// let mut file = match File::create(&attachment.filename) {
+ /// Ok(file) => file,
+ /// Err(why) => {
+ /// println!("Error creating file: {:?}", why);
+ /// let _ = message.channel_id.say("Error creating file");
///
- /// if let Err(why) = file.write(&content) {
- /// println!("Error writing to file: {:?}", why);
+ /// return;
+ /// },
+ /// };
///
- /// return;
- /// }
+ /// if let Err(why) = file.write(&content) {
+ /// println!("Error writing to file: {:?}", why);
///
- /// let _ = message.channel_id.say(&format!("Saved {:?}", attachment.filename));
- /// }
- /// });
+ /// return;
+ /// }
///
- /// client.on_ready(|_context, ready| {
- /// println!("{} is connected!", ready.user.name);
- /// });
+ /// let _ = message.channel_id.say(&format!("Saved {:?}", attachment.filename));
+ /// }
+ /// }
///
- /// let _ = client.start();
+ /// fn on_ready(&self, _: Context, ready: Ready) {
+ /// println!("{} is connected!", ready.user.name);
+ /// }
+ /// }
+ /// let token = env::var("DISCORD_TOKEN").expect("token in environment");
+ /// let mut client = Client::new(&token, Handler); client.start().unwrap();
/// ```
///
/// # Errors
diff --git a/src/model/channel/guild_channel.rs b/src/model/channel/guild_channel.rs
index 09e76a4..15a068e 100644
--- a/src/model/channel/guild_channel.rs
+++ b/src/model/channel/guild_channel.rs
@@ -413,22 +413,25 @@ impl GuildChannel {
/// channel:
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
- /// #
+ /// use serenity::prelude::*;
+ /// use serenity::model::*;
+ /// struct Handler;
+ ///
/// use serenity::CACHE;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, _: Context, msg: Message) {
+ /// let channel = match CACHE.read().unwrap().guild_channel(msg.channel_id) {
+ /// Some(channel) => channel,
+ /// None => return,
+ /// };
///
- /// client.on_message(|_, msg| {
- /// let channel = match CACHE.read().unwrap().guild_channel(msg.channel_id) {
- /// Some(channel) => channel,
- /// None => return,
- /// };
- ///
- /// let permissions = channel.read().unwrap().permissions_for(&msg.author).unwrap();
+ /// let permissions = channel.read().unwrap().permissions_for(&msg.author).unwrap();
///
- /// println!("The user's permissions: {:?}", permissions);
- /// });
+ /// println!("The user's permissions: {:?}", permissions);
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// Check if the current user has the [Attach Files] and [Send Messages]
@@ -436,38 +439,42 @@ impl GuildChannel {
/// for demonstrative purposes):
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
- /// #
+ /// use serenity::prelude::*;
+ /// use serenity::model::*;
/// use serenity::CACHE;
/// use serenity::model::permissions;
/// use std::fs::File;
///
- /// client.on_message(|_, msg| {
- /// let channel = match CACHE.read().unwrap().guild_channel(msg.channel_id) {
- /// Some(channel) => channel,
- /// None => return,
- /// };
+ /// struct Handler;
///
- /// let current_user_id = CACHE.read().unwrap().user.id;
- /// let permissions = channel.read().unwrap().permissions_for(current_user_id).unwrap();
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, _: Context, msg: Message) {
+ /// let channel = match CACHE.read().unwrap().guild_channel(msg.channel_id) {
+ /// Some(channel) => channel,
+ /// None => return,
+ /// };
///
- /// if !permissions.contains(permissions::ATTACH_FILES | permissions::SEND_MESSAGES) {
- /// return;
- /// }
- ///
- /// let file = match File::open("./cat.png") {
- /// Ok(file) => file,
- /// Err(why) => {
- /// println!("Err opening file: {:?}", why);
+ /// let current_user_id = CACHE.read().unwrap().user.id;
+ /// let permissions = channel.read().unwrap().permissions_for(current_user_id).unwrap();
///
+ /// if !permissions.contains(permissions::ATTACH_FILES | permissions::SEND_MESSAGES) {
/// return;
- /// },
- /// };
+ /// }
+ ///
+ /// let file = match File::open("./cat.png") {
+ /// Ok(file) => file,
+ /// Err(why) => {
+ /// println!("Err opening file: {:?}", why);
+ ///
+ /// return;
+ /// },
+ /// };
+ ///
+ /// let _ = msg.channel_id.send_file(file, "cat.png", |m| m.content("here's a cat"));
+ /// }
+ /// }
///
- /// let _ = msg.channel_id.send_file(file, "cat.png", |m| m.content("here's a cat"));
- /// });
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// # Errors
diff --git a/src/model/channel/message.rs b/src/model/channel/message.rs
index 3fa9de4..6314cae 100644
--- a/src/model/channel/message.rs
+++ b/src/model/channel/message.rs
@@ -80,10 +80,12 @@ impl Message {
/// ```rust,no_run
/// # #[macro_use] extern crate serenity;
/// #
- /// # use serenity::Client;
- /// #
/// # fn main() {
- /// # let mut client = Client::new("");
+ /// # use serenity::prelude::*;
+ /// # struct Handler;
+ /// #
+ /// # impl EventHandler for Handler {}
+ /// # let mut client = Client::new("token", Handler);
/// #
/// use serenity::model::Channel;
///
diff --git a/src/model/error.rs b/src/model/error.rs
index 3fffca6..eb52bd8 100644
--- a/src/model/error.rs
+++ b/src/model/error.rs
@@ -18,31 +18,36 @@ use super::Permissions;
/// #
/// # #[cfg(feature="client")]
/// # fn try_main() -> Result<(), Box<Error>> {
-/// use serenity::{Client, Error};
+/// use serenity::prelude::*;
+/// use serenity::model::*;
+/// use serenity::Error;
/// use serenity::model::ModelError;
/// use std::env;
///
-/// let token = env::var("DISCORD_BOT_TOKEN")?;
-/// let mut client = Client::new(&token);
+/// struct Handler;
///
-/// client.on_member_unban(|context, guild_id, user| {
-/// // If the user has an even discriminator, don't re-ban them.
-/// if user.discriminator % 2 == 0 {
-/// return;
-/// }
+/// impl EventHandler for Handler {
+/// fn on_guild_ban_removal(&self, context: Context, guild_id: GuildId, user: User) {
+/// // If the user has an even discriminator, don't re-ban them.
+/// if user.discriminator % 2 == 0 {
+/// return;
+/// }
///
-/// match guild_id.ban(user, 8) {
-/// Ok(()) => {
-/// // Ban successful.
-/// },
-/// Err(Error::Model(ModelError::DeleteMessageDaysAmount(amount))) => {
-/// println!("Failed deleting {} days' worth of messages", amount);
-/// },
-/// Err(why) => {
-/// println!("Unexpected error: {:?}", why);
-/// },
-/// }
-/// });
+/// match guild_id.ban(user, 8) {
+/// Ok(()) => {
+/// // Ban successful.
+/// },
+/// Err(Error::Model(ModelError::DeleteMessageDaysAmount(amount))) => {
+/// println!("Failed deleting {} days' worth of messages", amount);
+/// },
+/// Err(why) => {
+/// println!("Unexpected error: {:?}", why);
+/// },
+/// }
+/// }
+/// }
+/// let token = env::var("DISCORD_BOT_TOKEN")?;
+/// let mut client = Client::new(&token, Handler); client.start()?;
/// # Ok(())
/// # }
/// #
diff --git a/src/model/user.rs b/src/model/user.rs
index 364b978..c53b823 100644
--- a/src/model/user.rs
+++ b/src/model/user.rs
@@ -67,6 +67,7 @@ impl CurrentUser {
/// Returns the formatted URL to the user's default avatar URL.
///
/// This will produce a PNG URL.
+ #[inline]
pub fn default_avatar_url(&self) -> String {
default_avatar_url(self.discriminator)
}
@@ -429,46 +430,51 @@ impl User {
/// help message, and then react with `'👌'` to verify message sending:
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
/// use serenity::model::Permissions;
/// use serenity::CACHE;
///
- /// client.on_message(|_, msg| {
- /// if msg.content == "~help" {
- /// let url = match CACHE.read() {
- /// Ok(v) => {
- /// match v.user.invite_url(Permissions::empty()) {
- /// Ok(v) => v,
- /// Err(why) => {
- /// println!("Error creating invite url: {:?}", why);
- ///
- /// return;
- /// },
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, _: Context, msg: Message) {
+ /// if msg.content == "~help" {
+ /// let url = match CACHE.read() {
+ /// Ok(v) => {
+ /// match v.user.invite_url(Permissions::empty()) {
+ /// Ok(v) => v,
+ /// Err(why) => {
+ /// println!("Error creating invite url: {:?}", why);
+ ///
+ /// return;
+ /// },
+ /// }
+ /// },
+ /// Err(why) => {
+ /// println!("Error reading from CACHE: {:?}", why);
+ ///
+ /// return;
/// }
- /// },
- /// Err(why) => {
- /// println!("Error reading from CACHE: {:?}", why);
+ /// };
+ /// let help = format!("Helpful info here. Invite me with this link: <{}>", url);
+ ///
+ /// match msg.author.direct_message(|m| m.content(&help)) {
+ /// Ok(_) => {
+ /// let _ = msg.react('👌');
+ /// },
+ /// Err(why) => {
+ /// println!("Err sending help: {:?}", why);
+ ///
+ /// let _ = msg.reply("There was an error DMing you help.");
+ /// },
+ /// };
+ /// }
+ /// }
+ /// }
///
- /// return;
- /// }
- /// };
- /// let help = format!("Helpful info here. Invite me with this link: <{}>", url);
- ///
- /// match msg.author.direct_message(|m| m.content(&help)) {
- /// Ok(_) => {
- /// let _ = msg.react('👌');
- /// },
- /// Err(why) => {
- /// println!("Err sending help: {:?}", why);
- ///
- /// let _ = msg.reply("There was an error DMing you help.");
- /// },
- /// };
- /// }
- /// });
+ /// let mut client = Client::new("token", Handler);
/// ```
///
/// # Examples
@@ -652,9 +658,17 @@ impl User {
/// out-of-sync:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, _: Context, _: Message) {
+ /// // normal message handling here
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler);
/// #
/// use serenity::model::UserId;
/// use serenity::CACHE;
@@ -663,10 +677,6 @@ impl User {
///
/// let special_users = vec![UserId(114941315417899012), UserId(87600987040120832)];
///
- /// client.on_message(|_ctx, _msg| {
- /// // normal message handling here
- /// });
- ///
/// // start a new thread to periodically refresh the special users' data
/// // every 12 hours
/// let handle = thread::spawn(move || {
@@ -716,24 +726,29 @@ impl User {
/// Make a command to tell the user what their tag is:
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
/// use serenity::utils::MessageBuilder;
/// use serenity::utils::ContentModifier::Bold;
///
- /// client.on_message(|_, msg| {
- /// if msg.content == "!mytag" {
- /// let content = MessageBuilder::new()
- /// .push("Your tag is ")
- /// .push(Bold + msg.author.tag())
- /// .build();
+ /// struct Handler;
///
- /// let _ = msg.channel_id.say(&content);
- /// }
- /// });
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, _: Context, msg: Message) {
+ /// if msg.content == "!mytag" {
+ /// let content = MessageBuilder::new()
+ /// .push("Your tag is ")
+ /// .push(Bold + msg.author.tag())
+ /// .build();
+ ///
+ /// let _ = msg.channel_id.say(&content);
+ /// }
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
+ #[inline]
pub fn tag(&self) -> String {
tag(&self.name, self.discriminator)
}