aboutsummaryrefslogtreecommitdiff
path: root/src/client
diff options
context:
space:
mode:
authorMaiddog <[email protected]>2017-08-26 17:55:43 -0500
committeralex <[email protected]>2017-08-27 00:55:43 +0200
commit3e0b1032d80a1847558a752e8316d97f9ae58f04 (patch)
treeca65390091cb3c0ab98b6497a1447ba69df3d20d /src/client
parentUse `$crate` for `Args` (diff)
downloadserenity-3e0b1032d80a1847558a752e8316d97f9ae58f04.tar.xz
serenity-3e0b1032d80a1847558a752e8316d97f9ae58f04.zip
Add ability to play DCA and Opus files. (#148)
Diffstat (limited to 'src/client')
-rw-r--r--src/client/context.rs2
-rw-r--r--src/client/dispatch.rs71
-rw-r--r--src/client/mod.rs24
3 files changed, 73 insertions, 24 deletions
diff --git a/src/client/context.rs b/src/client/context.rs
index e8595cd..d0600b6 100644
--- a/src/client/context.rs
+++ b/src/client/context.rs
@@ -75,7 +75,7 @@ impl Context {
/// 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>{
+ pub fn edit_profile<F: FnOnce(EditProfile) -> EditProfile>(&self, f: F) -> Result<CurrentUser> {
let mut map = Map::new();
feature_cache! {{
diff --git a/src/client/dispatch.rs b/src/client/dispatch.rs
index cb45428..461fe8c 100644
--- a/src/client/dispatch.rs
+++ b/src/client/dispatch.rs
@@ -62,7 +62,7 @@ pub fn dispatch<H: EventHandler + 'static>(event: Event,
framework: &Arc<sync::Mutex<Option<Box<Framework>>>>,
data: &Arc<Mutex<ShareMap>>,
event_handler: &Arc<H>,
-tokio_handle: &Handle){
+ tokio_handle: &Handle) {
match event {
Event::MessageCreate(event) => {
let context = context(conn, data);
@@ -92,7 +92,7 @@ pub fn dispatch<H: EventHandler + 'static>(event: Event,
conn: &Arc<Mutex<Shard>>,
data: &Arc<Mutex<ShareMap>>,
event_handler: &Arc<H>,
-tokio_handle: &Handle){
+ tokio_handle: &Handle) {
match event {
Event::MessageCreate(event) => {
let context = context(conn, data);
@@ -106,7 +106,7 @@ tokio_handle: &Handle){
fn dispatch_message<H: EventHandler + 'static>(context: Context,
mut message: Message,
event_handler: &Arc<H>,
-tokio_handle: &Handle){
+ tokio_handle: &Handle) {
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
#[cfg(feature = "model")]
@@ -125,7 +125,7 @@ fn handle_event<H: EventHandler + 'static>(event: Event,
conn: &Arc<Mutex<Shard>>,
data: &Arc<Mutex<ShareMap>>,
event_handler: &Arc<H>,
-tokio_handle: &Handle){
+ tokio_handle: &Handle) {
#[cfg(feature="cache")]
let mut last_guild_create_time = now!();
@@ -172,7 +172,8 @@ tokio_handle: &Handle){
let context = context(conn, data);
match event.channel {
- Channel::Private(_) | Channel::Group(_) => {},
+ Channel::Private(_) |
+ Channel::Group(_) => {},
Channel::Guild(channel) => {
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
@@ -198,7 +199,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_channel_recipient_addition(context, event.channel_id, event.user);
+ h.on_channel_recipient_addition(
+ context,
+ event.channel_id,
+ event.user,
+ );
Ok(())
});
},
@@ -209,7 +214,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_channel_recipient_removal(context, event.channel_id, event.user);
+ h.on_channel_recipient_removal(
+ context,
+ event.channel_id,
+ event.user,
+ );
Ok(())
});
},
@@ -323,7 +332,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_guild_emojis_update(context, event.guild_id, event.emojis);
+ h.on_guild_emojis_update(
+ context,
+ event.guild_id,
+ event.emojis,
+ );
Ok(())
});
},
@@ -343,7 +356,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_guild_member_addition(context, event.guild_id, event.member);
+ h.on_guild_member_addition(
+ context,
+ event.guild_id,
+ event.member,
+ );
Ok(())
});
},
@@ -397,7 +414,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_guild_members_chunk(context, event.guild_id, event.members);
+ h.on_guild_members_chunk(
+ context,
+ event.guild_id,
+ event.members,
+ );
Ok(())
});
},
@@ -488,7 +509,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_message_delete_bulk(context, event.channel_id, event.ids);
+ h.on_message_delete_bulk(
+ context,
+ event.channel_id,
+ event.ids,
+ );
Ok(())
});
},
@@ -497,7 +522,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_message_delete(context, event.channel_id, event.message_id);
+ h.on_message_delete(
+ context,
+ event.channel_id,
+ event.message_id,
+ );
Ok(())
});
},
@@ -553,7 +582,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_reaction_remove_all(context, event.channel_id, event.message_id);
+ h.on_reaction_remove_all(
+ context,
+ event.channel_id,
+ event.message_id,
+ );
Ok(())
});
},
@@ -643,7 +676,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_voice_state_update(context, event.guild_id, event.voice_state);
+ h.on_voice_state_update(
+ context,
+ event.guild_id,
+ event.voice_state,
+ );
Ok(())
});
},
@@ -652,7 +689,11 @@ tokio_handle: &Handle){
let h = event_handler.clone();
tokio_handle.spawn_fn(move || {
- h.on_webhook_update(context, event.guild_id, event.channel_id);
+ h.on_webhook_update(
+ context,
+ event.guild_id,
+ event.channel_id,
+ );
Ok(())
});
},
diff --git a/src/client/mod.rs b/src/client/mod.rs
index 47ff96c..5821597 100644
--- a/src/client/mod.rs
+++ b/src/client/mod.rs
@@ -37,7 +37,7 @@ pub use CACHE;
use self::dispatch::dispatch;
use std::sync::{self, Arc};
-use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
+use std::sync::atomic::{ATOMIC_BOOL_INIT, AtomicBool, Ordering};
use parking_lot::Mutex;
use tokio_core::reactor::Core;
use futures;
@@ -194,7 +194,8 @@ pub struct Client<H: EventHandler + 'static> {
/// [`Event::Ready`]: ../model/event/enum.Event.html#variant.Ready
/// [`on_ready`]: #method.on_ready
event_handler: Arc<H>,
- #[cfg(feature = "framework")] framework: Arc<sync::Mutex<Option<Box<Framework>>>>,
+ #[cfg(feature = "framework")]
+ framework: Arc<sync::Mutex<Option<Box<Framework>>>>,
token: Arc<sync::Mutex<String>>,
}
@@ -354,7 +355,7 @@ impl<H: EventHandler + 'static> Client<H> {
/// [`on_message`]: #method.on_message
/// [framework docs]: ../framework/index.html
#[cfg(feature = "framework")]
-pub fn with_framework<F: Framework + 'static>(&mut self, f: F){
+ pub fn with_framework<F: Framework + 'static>(&mut self, f: F) {
self.framework = Arc::new(sync::Mutex::new(Some(Box::new(f))));
}
@@ -539,7 +540,10 @@ pub fn with_framework<F: Framework + 'static>(&mut self, f: F){
/// [`start_autosharded`]: #method.start_autosharded
/// [gateway docs]: gateway/index.html#sharding
pub fn start_shard(&mut self, shard: u64, shards: u64) -> Result<()> {
- self.start_connection([shard, shard, shards], http::get_gateway()?.url)
+ self.start_connection(
+ [shard, shard, shards],
+ http::get_gateway()?.url,
+ )
}
/// Establish sharded connections and start listening for events.
@@ -664,7 +668,10 @@ pub fn with_framework<F: Framework + 'static>(&mut self, f: F){
/// [`start_shards`]: #method.start_shards
/// [Gateway docs]: gateway/index.html#sharding
pub fn start_shard_range(&mut self, range: [u64; 2], total_shards: u64) -> Result<()> {
- self.start_connection([range[0], range[1], total_shards], http::get_gateway()?.url)
+ self.start_connection(
+ [range[0], range[1], total_shards],
+ http::get_gateway()?.url,
+ )
}
/// Returns a thread-safe handle for closing shards.
@@ -722,7 +729,8 @@ pub fn with_framework<F: Framework + 'static>(&mut self, f: F){
Ok(shard) => {
let shard = Arc::new(Mutex::new(shard));
- let monitor_info = feature_framework! {{
+ let monitor_info =
+ feature_framework! {{
MonitorInfo {
data: self.data.clone(),
event_handler: self.event_handler.clone(),
@@ -838,7 +846,7 @@ fn boot_shard(info: &BootInfo) -> Result<Shard> {
Err(Error::Client(ClientError::ShardBootFailure))
}
-fn monitor_shard<H: EventHandler + 'static>(mut info: MonitorInfo<H>){
+fn monitor_shard<H: EventHandler + 'static>(mut info: MonitorInfo<H>) {
handle_shard(&mut info);
let mut handle_still = HANDLE_STILL.load(Ordering::Relaxed);
@@ -892,7 +900,7 @@ fn monitor_shard<H: EventHandler + 'static>(mut info: MonitorInfo<H>){
}
}
-fn handle_shard<H: EventHandler + 'static>(info: &mut MonitorInfo<H>){
+fn handle_shard<H: EventHandler + 'static>(info: &mut MonitorInfo<H>) {
let mut core = Core::new().unwrap();
let handle = core.handle();