aboutsummaryrefslogtreecommitdiff
path: root/src/client
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/client
parentAdd a `quit` function` (diff)
downloadserenity-511ec87280e8ddec6589f48fec8260bf2e598bdb.tar.xz
serenity-511ec87280e8ddec6589f48fec8260bf2e598bdb.zip
Fix doc tests
Diffstat (limited to 'src/client')
-rw-r--r--src/client/context.rs204
-rw-r--r--src/client/mod.rs64
2 files changed, 175 insertions, 93 deletions
diff --git a/src/client/context.rs b/src/client/context.rs
index eaae7b3..97cde50 100644
--- a/src/client/context.rs
+++ b/src/client/context.rs
@@ -45,8 +45,8 @@ impl Context {
/// Create a new Context to be passed to an event handler.
pub(crate) fn new(shard: Arc<Mutex<Shard>>, data: Arc<Mutex<ShareMap>>) -> Context {
Context {
- data: data,
- shard: shard,
+ data,
+ shard,
}
}
@@ -59,15 +59,19 @@ impl Context {
/// Change the current user's username:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
- /// #
- /// # client.on_message(|ctx, msg| {
- /// # if msg.content == "!changename" {
- /// ctx.edit_profile(|p| p.username("Hakase"));
- /// # }
- /// # });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, ctx: Context, msg: Message) {
+ /// if msg.content == "!changename" {
+ /// ctx.edit_profile(|e| e.username("Edward Elric"));
+ /// }
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
#[cfg(feature="builder")]
pub fn edit_profile<F: FnOnce(EditProfile) -> EditProfile>(&self, f: F) -> Result<CurrentUser> {
@@ -104,14 +108,19 @@ impl Context {
/// Set the current user to being online on the shard:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
- /// client.on_message(|ctx, msg| {
- /// if msg.content == "!online" {
- /// ctx.online();
- /// }
- /// });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, ctx: Context, msg: Message) {
+ /// if msg.content == "!online" {
+ /// ctx.online();
+ /// }
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`Online`]: ../model/enum.OnlineStatus.html#variant.Online
@@ -128,14 +137,19 @@ impl Context {
/// Set the current user to being idle on the shard:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
- /// client.on_message(|ctx, msg| {
- /// if msg.content == "!idle" {
- /// ctx.idle();
- /// }
- /// });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, ctx: Context, msg: Message) {
+ /// if msg.content == "!idle" {
+ /// ctx.idle();
+ /// }
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`Idle`]: ../model/enum.OnlineStatus.html#variant.Idle
@@ -152,14 +166,19 @@ impl Context {
/// Set the current user to being Do Not Disturb on the shard:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
- /// client.on_message(|ctx, msg| {
- /// if msg.content == "!dnd" {
- /// ctx.dnd();
- /// }
- /// });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, ctx: Context, msg: Message) {
+ /// if msg.content == "!dnd" {
+ /// ctx.dnd();
+ /// }
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`DoNotDisturb`]: ../model/enum.OnlineStatus.html#variant.DoNotDisturb
@@ -177,12 +196,18 @@ impl Context {
/// [`Event::Ready`] is received:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
- /// client.on_ready(|ctx, _| {
- /// ctx.invisible();
- /// });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_ready(&self, ctx: Context, _: Ready) {
+ /// ctx.invisible();
+ /// }
+ /// }
+ ///
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`Event::Ready`]: ../model/event/enum.Event.html#variant.Ready
@@ -202,12 +227,18 @@ impl Context {
/// Reset the presence when an [`Event::Resumed`] is received:
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
- /// client.on_resume(|ctx, _| {
- /// ctx.reset_presence();
- /// });
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::event::ResumedEvent;
+ /// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_resume(&self, ctx: Context, _: ResumedEvent) {
+ /// ctx.reset_presence();
+ /// }
+ /// }
+ ///
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`Event::Resumed`]: ../model/event/enum.Event.html#variant.Resumed
@@ -226,21 +257,25 @@ impl Context {
/// playing:
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
/// use serenity::model::Game;
///
- /// client.on_message(|ctx, msg| {
- /// let args = msg.content.splitn(2, ' ').collect::<Vec<&str>>();
+ /// struct Handler;
+ /// impl EventHandler for Handler {
+ /// fn on_message(&self, ctx: Context, msg: Message) {
+ /// let args = msg.content.splitn(2, ' ').collect::<Vec<&str>>();
+ ///
+ /// if args.len() < 2 || *unsafe { args.get_unchecked(0) } != "~setgame" {
+ /// return;
+ /// }
///
- /// if args.len() < 2 || *unsafe { args.get_unchecked(0) } != "~setgame" {
- /// return;
- /// }
+ /// ctx.set_game(Game::playing(*unsafe { args.get_unchecked(1) }));
+ /// }
+ /// }
///
- /// ctx.set_game(Game::playing(*unsafe { args.get_unchecked(1) }));
- /// });
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`Online`]: ../model/enum.OnlineStatus.html#variant.Online
@@ -263,13 +298,18 @@ impl Context {
/// When an [`Event::Ready`] is received, set the game name to `"test"`:
///
/// ```rust,no_run
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// client.on_ready(|ctx, _| {
- /// ctx.set_game_name("test");
- /// });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_ready(&self, ctx: Context, _: Ready) {
+ /// ctx.set_game_name("test");
+ /// }
+ /// }
+ ///
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`Event::Ready`]: ../model/event/enum.Event.html#variant.Ready
@@ -297,35 +337,41 @@ impl Context {
/// Setting the current user as having no game and being [`Idle`]:
///
/// ```rust,no_run
- /// # use serenity::Client;
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # let mut client = Client::new("");
- /// #
- /// # client.on_ready(|ctx, _| {
- /// #
- /// use serenity::model::OnlineStatus;
- ///
- /// ctx.set_presence(None, OnlineStatus::Idle, false);
- /// # });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_ready(&self, ctx: Context, _: Ready) {
+ /// use serenity::model::OnlineStatus;
+ ///
+ /// ctx.set_presence(None, OnlineStatus::Idle, false);
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// Setting the current user as playing `"Heroes of the Storm"`, while being
/// [`DoNotDisturb`]:
///
/// ```rust,ignore
- /// # use serenity::Client;
- /// #
- /// # let mut client = Client::new("");
+ /// # use serenity::prelude::*;
+ /// # use serenity::model::*;
/// #
- /// # client.on_ready(|ctx, _| {
- /// #
- /// use serenity::model::{Game, OnlineStatus};
- ///
- /// let game = Game::playing("Heroes of the Storm");
- /// let status = OnlineStatus::DoNotDisturb;
- ///
- /// context.set_presence(Some(game), status, false);
- /// # });
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {
+ /// fn on_ready(&self, context: Context, _: Ready) {
+ /// use serenity::model::{Game, OnlineStatus};
+ ///
+ /// let game = Game::playing("Heroes of the Storm");
+ /// let status = OnlineStatus::DoNotDisturb;
+ ///
+ /// context.set_presence(Some(game), status, false);
+ /// }
+ /// }
+ /// let mut client = Client::new("token", Handler); client.start().unwrap();
/// ```
///
/// [`DoNotDisturb`]: ../model/enum.OnlineStatus.html#variant.DoNotDisturb
diff --git a/src/client/mod.rs b/src/client/mod.rs
index 5f47b1f..5a8bc51 100644
--- a/src/client/mod.rs
+++ b/src/client/mod.rs
@@ -192,6 +192,10 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// Create a Client, using a token from an environment variable:
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # use std::error::Error;
/// #
/// # fn try_main() -> Result<(), Box<Error>> {
@@ -199,7 +203,7 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// use std::env;
///
/// let token = env::var("DISCORD_TOKEN")?;
- /// let client = Client::new(&token);
+ /// let client = Client::new(&token, Handler);
/// # Ok(())
/// # }
/// #
@@ -247,13 +251,17 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// Create a simple framework that responds to a `~ping` command:
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
/// use serenity::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
/// client.with_framework(|f| f
/// .configure(|c| c.prefix("~"))
/// .command("ping", |c| c.exec_str("Pong!")));
@@ -293,13 +301,17 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// Starting a Client with only 1 shard, out of 1 total:
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
/// use serenity::client::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
///
/// if let Err(why) = client.start() {
/// println!("Err with client: {:?}", why);
@@ -334,13 +346,17 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// Start as many shards as needed using autosharding:
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
- /// use serenity::Client;
+ /// use serenity::client::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
///
/// if let Err(why) = client.start_autosharded() {
/// println!("Err with client: {:?}", why);
@@ -389,13 +405,17 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// Start shard 3 of 5:
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
- /// use serenity::Client;
+ /// use serenity::client::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
///
/// if let Err(why) = client.start_shard(3, 5) {
/// println!("Err with client: {:?}", why);
@@ -412,13 +432,17 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// [`start_autosharded`]):
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
- /// use serenity::Client;
+ /// use serenity::client::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
///
/// if let Err(why) = client.start_shard(0, 1) {
/// println!("Err with client: {:?}", why);
@@ -461,13 +485,17 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// Start all of 8 shards:
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
- /// use serenity::Client;
+ /// use serenity::client::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
///
/// if let Err(why) = client.start_shards(8) {
/// println!("Err with client: {:?}", why);
@@ -511,23 +539,31 @@ impl<H: EventHandler + Send + Sync + 'static> Client<H> {
/// For a bot using a total of 10 shards, initialize shards 4 through 7:
///
/// ```rust,ignore
+ /// # use serenity::prelude::EventHandler;
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// use serenity::Client;
/// use std::env;
///
/// let token = env::var("DISCORD_BOT_TOKEN").unwrap();
- /// let mut client = Client::new(&token);
+ /// let mut client = Client::new(&token, Handler);
///
/// let _ = client.start_shard_range([4, 7], 10);
/// ```
///
/// ```rust,no_run
+ /// # use serenity::prelude::EventHandler;
/// # use std::error::Error;
/// #
+ /// struct Handler;
+ ///
+ /// impl EventHandler for Handler {}
/// # fn try_main() -> Result<(), Box<Error>> {
- /// use serenity::Client;
+ /// use serenity::client::Client;
/// use std::env;
///
- /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?);
+ /// let mut client = Client::new(&env::var("DISCORD_TOKEN")?, Handler);
///
/// if let Err(why) = client.start_shard_range([4, 7], 10) {
/// println!("Err with client: {:?}", why);