aboutsummaryrefslogtreecommitdiff
path: root/src/model/guild
diff options
context:
space:
mode:
authoracdenisSK <[email protected]>2017-07-27 08:10:41 +0200
committeracdenisSK <[email protected]>2017-07-27 08:10:41 +0200
commit70b5097aaac85f970c32ceb988dbb5f5d575ee0f (patch)
treed2f391d3b552cfae58b74748a2a2aa5ae80c7986 /src/model/guild
parentrustfmt (diff)
downloadserenity-70b5097aaac85f970c32ceb988dbb5f5d575ee0f.tar.xz
serenity-70b5097aaac85f970c32ceb988dbb5f5d575ee0f.zip
Change the config a bit, and a few nitpicks
Diffstat (limited to 'src/model/guild')
-rw-r--r--src/model/guild/audit_log.rs146
-rw-r--r--src/model/guild/guild_id.rs24
-rw-r--r--src/model/guild/member.rs23
-rw-r--r--src/model/guild/mod.rs101
-rw-r--r--src/model/guild/partial_guild.rs21
5 files changed, 150 insertions, 165 deletions
diff --git a/src/model/guild/audit_log.rs b/src/model/guild/audit_log.rs
index 020ad77..742425e 100644
--- a/src/model/guild/audit_log.rs
+++ b/src/model/guild/audit_log.rs
@@ -91,22 +91,22 @@ fn deserialize_target<'de, D: Deserializer<'de>>(de: D) -> Result<Target, D::Err
fn visit_i32<E: de::Error>(self, value: i32) -> Result<Target, E> {
Ok(if value < 10 {
- Target::Guild
- } else if value < 20 {
- Target::Channel
- } else if value < 30 {
- Target::User
- } else if value < 40 {
- Target::Role
- } else if value < 50 {
- Target::Invite
- } else if value < 60 {
- Target::Webhook
- } else if value < 70 {
- Target::Emoji
- } else {
- return Err(E::custom(format!("Unexpected target number: {}", value)));
- })
+ Target::Guild
+ } else if value < 20 {
+ Target::Channel
+ } else if value < 30 {
+ Target::User
+ } else if value < 40 {
+ Target::Role
+ } else if value < 50 {
+ Target::Invite
+ } else if value < 60 {
+ Target::Webhook
+ } else if value < 70 {
+ Target::Emoji
+ } else {
+ return Err(E::custom(format!("Unexpected target number: {}", value)));
+ })
}
}
@@ -126,58 +126,58 @@ fn deserialize_action<'de, D: Deserializer<'de>>(de: D) -> Result<Action, D::Err
fn visit_i32<E: de::Error>(self, value: i32) -> Result<Action, E> {
// todo: improve this
Ok(if value == 1 {
- Action::GuildUpdate
- } else if value == 10 {
- Action::ChannelCreate
- } else if value == 11 {
- Action::ChannelUpdate
- } else if value == 12 {
- Action::ChannelDelete
- } else if value == 13 {
- Action::ChannelOverwriteCreate
- } else if value == 14 {
- Action::ChannelOverwriteUpdate
- } else if value == 15 {
- Action::ChannelOverwriteDelete
- } else if value == 20 {
- Action::MemberKick
- } else if value == 21 {
- Action::MemberPrune
- } else if value == 22 {
- Action::MemberBanAdd
- } else if value == 23 {
- Action::MemberBanRemove
- } else if value == 24 {
- Action::MemberUpdate
- } else if value == 25 {
- Action::MemberRoleUpdate
- } else if value == 30 {
- Action::RoleCreate
- } else if value == 31 {
- Action::RoleUpdate
- } else if value == 32 {
- Action::RoleDelete
- } else if value == 40 {
- Action::InviteCreate
- } else if value == 41 {
- Action::InviteUpdate
- } else if value == 42 {
- Action::InviteDelete
- } else if value == 50 {
- Action::WebhookCreate
- } else if value == 51 {
- Action::WebhookUpdate
- } else if value == 52 {
- Action::WebhookDelete
- } else if value == 60 {
- Action::EmojiCreate
- } else if value == 61 {
- Action::EmojiUpdate
- } else if value == 62 {
- Action::EmojiDelete
- } else {
- return Err(E::custom(format!("Unexpected action number: {}", value)));
- })
+ Action::GuildUpdate
+ } else if value == 10 {
+ Action::ChannelCreate
+ } else if value == 11 {
+ Action::ChannelUpdate
+ } else if value == 12 {
+ Action::ChannelDelete
+ } else if value == 13 {
+ Action::ChannelOverwriteCreate
+ } else if value == 14 {
+ Action::ChannelOverwriteUpdate
+ } else if value == 15 {
+ Action::ChannelOverwriteDelete
+ } else if value == 20 {
+ Action::MemberKick
+ } else if value == 21 {
+ Action::MemberPrune
+ } else if value == 22 {
+ Action::MemberBanAdd
+ } else if value == 23 {
+ Action::MemberBanRemove
+ } else if value == 24 {
+ Action::MemberUpdate
+ } else if value == 25 {
+ Action::MemberRoleUpdate
+ } else if value == 30 {
+ Action::RoleCreate
+ } else if value == 31 {
+ Action::RoleUpdate
+ } else if value == 32 {
+ Action::RoleDelete
+ } else if value == 40 {
+ Action::InviteCreate
+ } else if value == 41 {
+ Action::InviteUpdate
+ } else if value == 42 {
+ Action::InviteDelete
+ } else if value == 50 {
+ Action::WebhookCreate
+ } else if value == 51 {
+ Action::WebhookUpdate
+ } else if value == 52 {
+ Action::WebhookDelete
+ } else if value == 60 {
+ Action::EmojiCreate
+ } else if value == 61 {
+ Action::EmojiUpdate
+ } else if value == 62 {
+ Action::EmojiDelete
+ } else {
+ return Err(E::custom(format!("Unexpected action number: {}", value)));
+ })
}
}
@@ -214,11 +214,11 @@ impl<'de> Deserialize<'de> for AuditLogs {
};
Ok(AuditLogs {
- entries: audit_log_entries
- .into_iter()
- .map(|entry| (entry.id, entry))
- .collect(),
- })
+ entries: audit_log_entries
+ .into_iter()
+ .map(|entry| (entry.id, entry))
+ .collect(),
+ })
}
}
diff --git a/src/model/guild/guild_id.rs b/src/model/guild/guild_id.rs
index a0b69d1..08fd1a1 100644
--- a/src/model/guild/guild_id.rs
+++ b/src/model/guild/guild_id.rs
@@ -145,8 +145,7 @@ impl GuildId {
///
/// [Manage Guild]: permissions/constant.MANAGE_GUILD.html
pub fn create_integration<I>(&self, integration_id: I, kind: &str) -> Result<()>
- where
- I: Into<IntegrationId>, {
+ where I: Into<IntegrationId> {
let integration_id = integration_id.into();
let map = json!({
"id": integration_id.0,
@@ -263,9 +262,7 @@ impl GuildId {
/// ```
#[inline]
pub fn edit_member<F, U>(&self, user_id: U, f: F) -> Result<()>
- where
- F: FnOnce(EditMember) -> EditMember,
- U: Into<UserId>, {
+ where F: FnOnce(EditMember) -> EditMember, U: Into<UserId> {
http::edit_member(self.0, user_id.into().0, &f(EditMember::default()).0)
}
@@ -299,9 +296,7 @@ impl GuildId {
/// [Manage Roles]: permissions/constant.MANAGE_ROLES.html
#[inline]
pub fn edit_role<F, R>(&self, role_id: R, f: F) -> Result<Role>
- where
- F: FnOnce(EditRole) -> EditRole,
- R: Into<RoleId>, {
+ where F: FnOnce(EditRole) -> EditRole, R: Into<RoleId> {
http::edit_role(self.0, role_id.into().0, &f(EditRole::default()).0)
}
@@ -381,8 +376,7 @@ impl GuildId {
/// [`User`]: struct.User.html
#[inline]
pub fn members<U>(&self, limit: Option<u64>, after: Option<U>) -> Result<Vec<Member>>
- where
- U: Into<UserId>, {
+ where U: Into<UserId> {
http::get_guild_members(self.0, limit, after.map(|x| x.into().0))
}
@@ -392,12 +386,12 @@ impl GuildId {
///
/// [Move Members]: permissions/constant.MOVE_MEMBERS.html
pub fn move_member<C, U>(&self, user_id: U, channel_id: C) -> Result<()>
- where
- C: Into<ChannelId>,
- U: Into<UserId>, {
+ where C: Into<ChannelId>, U: Into<UserId> {
let mut map = Map::new();
- map.insert("channel_id".to_owned(),
- Value::Number(Number::from(channel_id.into().0)));
+ map.insert(
+ "channel_id".to_owned(),
+ Value::Number(Number::from(channel_id.into().0)),
+ );
http::edit_member(self.0, user_id.into().0, &map)
}
diff --git a/src/model/guild/member.rs b/src/model/guild/member.rs
index dcf503d..70590b0 100644
--- a/src/model/guild/member.rs
+++ b/src/model/guild/member.rs
@@ -138,10 +138,12 @@ impl Member {
return Err(Error::ExceededLimit);
}
- http::ban_user(self.guild_id.0,
- self.user.read().unwrap().id.0,
- ban_options.dmd(),
- &*reason)
+ http::ban_user(
+ self.guild_id.0,
+ self.user.read().unwrap().id.0,
+ ban_options.dmd(),
+ &*reason,
+ )
}
/// Determines the member's colour.
@@ -181,9 +183,11 @@ impl Member {
/// Returns the DiscordTag of a Member, taking possible nickname into account.
#[inline]
pub fn distinct(&self) -> String {
- format!("{}#{}",
- self.display_name(),
- self.user.read().unwrap().discriminator)
+ format!(
+ "{}#{}",
+ self.display_name(),
+ self.user.read().unwrap().discriminator
+ )
}
/// Edits the member with the given data. See [`Guild::edit_member`] for
@@ -279,7 +283,10 @@ impl Member {
let guild = guild.read().unwrap();
- Ok(guild.permissions_for(ChannelId(guild.id.0), self.user.read().unwrap().id))
+ Ok(
+ guild
+ .permissions_for(ChannelId(guild.id.0), self.user.read().unwrap().id),
+ )
}
/// Removes a [`Role`] from the member, editing its roles in-place if the
diff --git a/src/model/guild/mod.rs b/src/model/guild/mod.rs
index 70d82cb..c46dba6 100644
--- a/src/model/guild/mod.rs
+++ b/src/model/guild/mod.rs
@@ -168,7 +168,9 @@ impl Guild {
/// [Ban Members]: permissions/constant.BAN_MEMBERS.html
pub fn ban<U: Into<UserId>>(&self, user: U, delete_message_days: u8) -> Result<()> {
if delete_message_days > 7 {
- return Err(Error::Model(ModelError::DeleteMessageDaysAmount(delete_message_days)));
+ return Err(Error::Model(
+ ModelError::DeleteMessageDaysAmount(delete_message_days),
+ ));
}
#[cfg(feature = "cache")]
@@ -321,8 +323,7 @@ impl Guild {
/// [Manage Guild]: permissions/constant.MANAGE_GUILD.html
#[inline]
pub fn create_integration<I>(&self, integration_id: I, kind: &str) -> Result<()>
- where
- I: Into<IntegrationId>, {
+ where I: Into<IntegrationId> {
self.id.create_integration(integration_id, kind)
}
@@ -349,8 +350,7 @@ impl Guild {
/// [`Role`]: struct.Role.html
/// [Manage Roles]: permissions/constant.MANAGE_ROLES.html
pub fn create_role<F>(&self, f: F) -> Result<Role>
- where
- F: FnOnce(EditRole) -> EditRole, {
+ where F: FnOnce(EditRole) -> EditRole {
#[cfg(feature = "cache")]
{
let req = permissions::MANAGE_ROLES;
@@ -452,8 +452,7 @@ impl Guild {
/// [`ModelError::InvalidPermissions`]: enum.ModelError.html#variant.InvalidPermissions
/// [Manage Guild]: permissions/constant.MANAGE_GUILD.html
pub fn edit<F>(&mut self, f: F) -> Result<()>
- where
- F: FnOnce(EditGuild) -> EditGuild, {
+ where F: FnOnce(EditGuild) -> EditGuild {
#[cfg(feature = "cache")]
{
let req = permissions::MANAGE_GUILD;
@@ -515,9 +514,7 @@ impl Guild {
/// ```
#[inline]
pub fn edit_member<F, U>(&self, user_id: U, f: F) -> Result<()>
- where
- F: FnOnce(EditMember) -> EditMember,
- U: Into<UserId>, {
+ where F: FnOnce(EditMember) -> EditMember, U: Into<UserId> {
self.id.edit_member(user_id, f)
}
@@ -563,9 +560,7 @@ impl Guild {
/// [Manage Roles]: permissions/constant.MANAGE_ROLES.html
#[inline]
pub fn edit_role<F, R>(&self, role_id: R, f: F) -> Result<Role>
- where
- F: FnOnce(EditRole) -> EditRole,
- R: Into<RoleId>, {
+ where F: FnOnce(EditRole) -> EditRole, R: Into<RoleId> {
self.id.edit_role(role_id, f)
}
@@ -662,8 +657,7 @@ impl Guild {
/// [`User`]: struct.User.html
#[inline]
pub fn members<U>(&self, limit: Option<u64>, after: Option<U>) -> Result<Vec<Member>>
- where
- U: Into<UserId>, {
+ where U: Into<UserId> {
self.id.members(limit, after)
}
@@ -674,10 +668,8 @@ impl Guild {
for (&id, member) in &self.members {
match self.presences.get(&id) {
- Some(presence) => {
- if status == presence.status {
- members.push(member);
- }
+ Some(presence) => if status == presence.status {
+ members.push(member);
},
None => continue,
}
@@ -727,9 +719,9 @@ impl Guild {
name_matches && discrim_matches
})
.or_else(|| {
- self.members
- .values()
- .find(|member| member.nick.as_ref().map_or(false, |nick| nick == name))
+ self.members.values().find(|member| {
+ member.nick.as_ref().map_or(false, |nick| nick == name)
+ })
})
}
@@ -740,9 +732,7 @@ impl Guild {
/// [Move Members]: permissions/constant.MOVE_MEMBERS.html
#[inline]
pub fn move_member<C, U>(&self, user_id: U, channel_id: C) -> Result<()>
- where
- C: Into<ChannelId>,
- U: Into<UserId>, {
+ where C: Into<ChannelId>, U: Into<UserId> {
self.id.move_member(user_id, channel_id)
}
@@ -750,9 +740,7 @@ impl Guild {
///
/// [`User`]: struct.User.html
pub fn permissions_for<C, U>(&self, channel_id: C, user_id: U) -> Permissions
- where
- C: Into<ChannelId>,
- U: Into<UserId>, {
+ where C: Into<ChannelId>, U: Into<UserId> {
use super::permissions::*;
let user_id = user_id.into();
@@ -1030,17 +1018,16 @@ impl<'de> Deserialize<'de> for Guild {
if let Some(array) = map.get_mut("members").and_then(|x| x.as_array_mut()) {
for value in array {
if let Some(member) = value.as_object_mut() {
- member.insert("guild_id".to_owned(), Value::Number(Number::from(guild_id)));
+ member
+ .insert("guild_id".to_owned(), Value::Number(Number::from(guild_id)));
}
}
}
}
let afk_channel_id = match map.remove("afk_channel_id") {
- Some(v) => {
- serde_json::from_value::<Option<ChannelId>>(v)
- .map_err(DeError::custom)?
- },
+ Some(v) => serde_json::from_value::<Option<ChannelId>>(v)
+ .map_err(DeError::custom)?,
None => None,
};
let afk_timeout = map.remove("afk_timeout")
@@ -1052,7 +1039,9 @@ impl<'de> Deserialize<'de> for Guild {
.and_then(deserialize_guild_channels)
.map_err(DeError::custom)?;
let default_message_notifications = map.remove("default_message_notifications")
- .ok_or_else(|| DeError::custom("expected guild default_message_notifications"))
+ .ok_or_else(|| {
+ DeError::custom("expected guild default_message_notifications")
+ })
.and_then(u64::deserialize)
.map_err(DeError::custom)?;
let emojis = map.remove("emojis")
@@ -1125,28 +1114,28 @@ impl<'de> Deserialize<'de> for Guild {
.map_err(DeError::custom)?;
Ok(Self {
- afk_channel_id: afk_channel_id,
- afk_timeout: afk_timeout,
- channels: channels,
- default_message_notifications: default_message_notifications,
- emojis: emojis,
- features: features,
- icon: icon,
- id: id,
- joined_at: joined_at,
- large: large,
- member_count: member_count,
- members: members,
- mfa_level: mfa_level,
- name: name,
- owner_id: owner_id,
- presences: presences,
- region: region,
- roles: roles,
- splash: splash,
- verification_level: verification_level,
- voice_states: voice_states,
- })
+ afk_channel_id: afk_channel_id,
+ afk_timeout: afk_timeout,
+ channels: channels,
+ default_message_notifications: default_message_notifications,
+ emojis: emojis,
+ features: features,
+ icon: icon,
+ id: id,
+ joined_at: joined_at,
+ large: large,
+ member_count: member_count,
+ members: members,
+ mfa_level: mfa_level,
+ name: name,
+ owner_id: owner_id,
+ presences: presences,
+ region: region,
+ roles: roles,
+ splash: splash,
+ verification_level: verification_level,
+ voice_states: voice_states,
+ })
}
}
diff --git a/src/model/guild/partial_guild.rs b/src/model/guild/partial_guild.rs
index d070e54..88256f0 100644
--- a/src/model/guild/partial_guild.rs
+++ b/src/model/guild/partial_guild.rs
@@ -58,7 +58,9 @@ impl PartialGuild {
/// [Ban Members]: permissions/constant.BAN_MEMBERS.html
pub fn ban<U: Into<UserId>>(&self, user: U, delete_message_days: u8) -> Result<()> {
if delete_message_days > 7 {
- return Err(Error::Model(ModelError::DeleteMessageDaysAmount(delete_message_days)));
+ return Err(Error::Model(
+ ModelError::DeleteMessageDaysAmount(delete_message_days),
+ ));
}
self.id.ban(user, delete_message_days)
@@ -131,8 +133,7 @@ impl PartialGuild {
/// [Manage Guild]: permissions/constant.MANAGE_GUILD.html
#[inline]
pub fn create_integration<I>(&self, integration_id: I, kind: &str) -> Result<()>
- where
- I: Into<IntegrationId>, {
+ where I: Into<IntegrationId> {
self.id.create_integration(integration_id, kind)
}
@@ -205,8 +206,7 @@ impl PartialGuild {
///
/// [Manage Guild]: permissions/constant.MANAGE_GUILD.html
pub fn edit<F>(&mut self, f: F) -> Result<()>
- where
- F: FnOnce(EditGuild) -> EditGuild, {
+ where F: FnOnce(EditGuild) -> EditGuild {
match self.id.edit(f) {
Ok(guild) => {
self.afk_channel_id = guild.afk_channel_id;
@@ -261,9 +261,7 @@ impl PartialGuild {
/// ```
#[inline]
pub fn edit_member<F, U>(&self, user_id: U, f: F) -> Result<()>
- where
- F: FnOnce(EditMember) -> EditMember,
- U: Into<UserId>, {
+ where F: FnOnce(EditMember) -> EditMember, U: Into<UserId> {
self.id.edit_member(user_id, f)
}
@@ -356,8 +354,7 @@ impl PartialGuild {
///
/// [`User`]: struct.User.html
pub fn members<U>(&self, limit: Option<u64>, after: Option<U>) -> Result<Vec<Member>>
- where
- U: Into<UserId>, {
+ where U: Into<UserId> {
self.id.members(limit, after)
}
@@ -368,9 +365,7 @@ impl PartialGuild {
/// [Move Members]: permissions/constant.MOVE_MEMBERS.html
#[inline]
pub fn move_member<C, U>(&self, user_id: U, channel_id: C) -> Result<()>
- where
- C: Into<ChannelId>,
- U: Into<UserId>, {
+ where C: Into<ChannelId>, U: Into<UserId> {
self.id.move_member(user_id, channel_id)
}