diff options
| author | acdenisSK <[email protected]> | 2017-10-16 14:39:57 +0200 |
|---|---|---|
| committer | acdenisSK <[email protected]> | 2017-10-16 14:40:10 +0200 |
| commit | c7aa27dbb64e64d70c7f13725c79017c4bba1c95 (patch) | |
| tree | 616900c9194b5ec40abd6314239fec201ec3e2df /src | |
| parent | Update 0.4.2's Cargo.toml version to 0.4.2 itself (#196) (diff) | |
| download | serenity-c7aa27dbb64e64d70c7f13725c79017c4bba1c95.tar.xz serenity-c7aa27dbb64e64d70c7f13725c79017c4bba1c95.zip | |
defer to `delete_message` if there's just one message to delete
Diffstat (limited to 'src')
| -rw-r--r-- | src/model/channel/channel_id.rs | 10 | ||||
| -rw-r--r-- | src/model/channel/guild_channel.rs | 2 |
2 files changed, 8 insertions, 4 deletions
diff --git a/src/model/channel/channel_id.rs b/src/model/channel/channel_id.rs index f728191..2e415dc 100644 --- a/src/model/channel/channel_id.rs +++ b/src/model/channel/channel_id.rs @@ -122,10 +122,14 @@ impl ChannelId { .into_iter() .map(|message_id| message_id.as_ref().0) .collect::<Vec<u64>>(); + + if ids.len() == 1 { + self.delete_message(ids[0]) + } else { + let map = json!({ "messages": ids }); - let map = json!({ "messages": ids }); - - http::delete_messages(self.0, &map) + http::delete_messages(self.0, &map) + } } /// Deletes all permission overrides in the channel from a member or role. diff --git a/src/model/channel/guild_channel.rs b/src/model/channel/guild_channel.rs index e2e5f09..d6649b4 100644 --- a/src/model/channel/guild_channel.rs +++ b/src/model/channel/guild_channel.rs @@ -258,7 +258,7 @@ impl GuildChannel { /// [`Channel::delete_messages`]: enum.Channel.html#method.delete_messages /// [Manage Messages]: permissions/constant.MANAGE_MESSAGES.html #[inline] - pub fn delete_messages<'a, It: IntoIterator<Item=&'a MessageId>>(&self, message_ids: It) -> Result<()> { + pub fn delete_messages<T: AsRef<MessageId>, It: IntoIterator<Item=T>>(&self, message_ids: It) -> Result<()> { self.id.delete_messages(message_ids) } |