diff options
| author | Zeyla Hellyer <[email protected]> | 2017-10-10 20:08:11 -0700 |
|---|---|---|
| committer | Zeyla Hellyer <[email protected]> | 2017-10-10 20:08:11 -0700 |
| commit | 93e0a4215c915b98cf433ac6d0bcfbc60f0168ec (patch) | |
| tree | 727111506d1f89cd8a511b8b79c102131222421f /src/builder | |
| parent | Resume on resumable session invalidations (diff) | |
| download | serenity-93e0a4215c915b98cf433ac6d0bcfbc60f0168ec.tar.xz serenity-93e0a4215c915b98cf433ac6d0bcfbc60f0168ec.zip | |
Switch to parking_lot::{Mutex, RwLock}
Switch to the `parking_lot` crate's implementations of
`std::sync::Mutex` and `std::sync::RwLock`, which are more efficient.
A writeup on why `parking_lot` is more efficient can be read here:
<https://github.com/Amanieu/parking_lot>
Upgrade path:
Modify `mutex.lock().unwrap()` usage to `mutex.lock()` (not needing to
unwrap or handle a result), and
`rwlock.read().unwrap()`/`rwlock.write().unwrap()` usage to
`rwlock.read()` and `rwlock.write()`.
For example, modify:
```rust
use serenity::CACHE;
println!("{}", CACHE.read().unwrap().user.id);
```
to:
```rust
use serenity::CACHE;
println!("{}", CACHE.read().user.id);
```
Diffstat (limited to 'src/builder')
| -rw-r--r-- | src/builder/create_embed.rs | 10 | ||||
| -rw-r--r-- | src/builder/create_invite.rs | 20 |
2 files changed, 15 insertions, 15 deletions
diff --git a/src/builder/create_embed.rs b/src/builder/create_embed.rs index a6b264c..f7dc0b1 100644 --- a/src/builder/create_embed.rs +++ b/src/builder/create_embed.rs @@ -249,20 +249,20 @@ impl CreateEmbed { /// impl EventHandler for Handler { /// fn on_guild_member_addition(&self, _: Context, guild_id: GuildId, member: Member) { /// use serenity::client::CACHE; - /// let cache = CACHE.read().unwrap(); + /// let cache = CACHE.read(); /// /// if let Some(guild) = cache.guild(guild_id) { - /// let guild = guild.read().unwrap(); + /// let guild = guild.read(); /// /// let channel_search = guild /// .channels /// .values() - /// .find(|c| c.read().unwrap().name == "join-log"); + /// .find(|c| c.read().name == "join-log"); /// /// if let Some(channel) = channel_search { - /// let user = member.user.read().unwrap(); + /// let user = member.user.read(); /// - /// let _ = channel.read().unwrap().send_message(|m| m + /// let _ = channel.read().send_message(|m| m /// .embed(|e| { /// let mut e = e /// .author(|a| a.icon_url(&user.face()).name(&user.name)) diff --git a/src/builder/create_invite.rs b/src/builder/create_invite.rs index 5f4f0bf..d719c17 100644 --- a/src/builder/create_invite.rs +++ b/src/builder/create_invite.rs @@ -21,7 +21,7 @@ use internal::prelude::*; /// fn on_message(&self, _: Context, msg: Message) { /// use serenity::client::CACHE; /// if msg.content == "!createinvite" { -/// let channel = match CACHE.read().unwrap().guild_channel(msg.channel_id) { +/// let channel = match CACHE.read().guild_channel(msg.channel_id) { /// Some(channel) => channel, /// None => { /// let _ = msg.channel_id.say("Error creating invite"); @@ -30,7 +30,7 @@ use internal::prelude::*; /// }, /// }; /// -/// let reader = channel.read().unwrap(); +/// let reader = channel.read(); /// /// let invite = match reader.create_invite(|i| i.max_age(3600).max_uses(10)) { /// Ok(invite) => invite, @@ -77,8 +77,8 @@ impl CreateInvite { /// # use std::error::Error; /// # /// # fn try_main() -> Result<(), Box<Error>> { - /// # let channel = CACHE.read().unwrap().guild_channel(81384788765712384).unwrap(); - /// # let channel = channel.read().unwrap(); + /// # let channel = CACHE.read().guild_channel(81384788765712384).unwrap(); + /// # let channel = channel.read(); /// # /// let invite = channel.create_invite(|i| i.max_age(3600))?; /// # Ok(()) @@ -111,8 +111,8 @@ impl CreateInvite { /// # use std::error::Error; /// # /// # fn try_main() -> Result<(), Box<Error>> { - /// # let channel = CACHE.read().unwrap().guild_channel(81384788765712384).unwrap(); - /// # let channel = channel.read().unwrap(); + /// # let channel = CACHE.read().guild_channel(81384788765712384).unwrap(); + /// # let channel = channel.read(); /// # /// let invite = channel.create_invite(|i| i.max_uses(5))?; /// # Ok(()) @@ -143,8 +143,8 @@ impl CreateInvite { /// # use std::error::Error; /// # /// # fn try_main() -> Result<(), Box<Error>> { - /// # let channel = CACHE.read().unwrap().guild_channel(81384788765712384).unwrap(); - /// # let channel = channel.read().unwrap(); + /// # let channel = CACHE.read().guild_channel(81384788765712384).unwrap(); + /// # let channel = channel.read(); /// # /// let invite = channel.create_invite(|i| i.temporary(true))?; /// # Ok(()) @@ -175,8 +175,8 @@ impl CreateInvite { /// # use std::error::Error; /// # /// # fn try_main() -> Result<(), Box<Error>> { - /// # let channel = CACHE.read().unwrap().guild_channel(81384788765712384).unwrap(); - /// # let channel = channel.read().unwrap(); + /// # let channel = CACHE.read().guild_channel(81384788765712384).unwrap(); + /// # let channel = channel.read(); /// # /// let invite = channel.create_invite(|i| i.unique(true))?; /// # Ok(()) |