From c8c6b83ca685a3e503c853d4154a17761790954e Mon Sep 17 00:00:00 2001 From: Austin Hellyer Date: Sun, 5 Feb 2017 15:37:09 -0800 Subject: Standardize methods for creating messages --- src/model/channel.rs | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/model/channel.rs b/src/model/channel.rs index b57f466..d4c18b0 100644 --- a/src/model/channel.rs +++ b/src/model/channel.rs @@ -1105,8 +1105,7 @@ impl Group { /// [`Message`]: struct.Message.html /// [`Search`]: ../utils/builder/struct.Search.html #[inline] - pub fn search(&self, f: F) -> Result - where F: FnOnce(Search) -> Search { + pub fn search Search>(&self, f: F) -> Result { self.channel_id.search(f) } @@ -1118,8 +1117,8 @@ impl Group { /// /// [Send Messages]: permissions/constant.SEND_MESSAGES.html #[inline] - pub fn send_message(&self, content: &str) -> Result { - self.channel_id.send_message(|m| m.content(content)) + pub fn send_message CreateMessage>(&self, f: F) -> Result { + self.channel_id.send_message(f) } /// Unpins a [`Message`] in the channel given by its Id. @@ -1764,12 +1763,9 @@ impl PrivateChannel { /// /// [`ClientError::MessageTooLong`]: ../client/enum.ClientError.html#variant.MessageTooLong /// [`Message`]: struct.Message.html - pub fn send_message(&self, content: &str) -> Result { - if let Some(length_over) = Message::overflow_length(content) { - return Err(Error::Client(ClientError::MessageTooLong(length_over))); - } - - self.id.send_message(|m| m.content(content)) + #[inline] + pub fn send_message CreateMessage>(&self, f: F) -> Result { + self.id.send_message(f) } /// Unpins a [`Message`] in the channel given by its Id. @@ -2191,11 +2187,7 @@ impl GuildChannel { /// [`ClientError::MessageTooLong`]: ../client/enum.ClientError.html#variant.MessageTooLong /// [`Message`]: struct.Message.html /// [Send Messages]: permissions/constant.SEND_MESSAGES.html - pub fn send_message(&self, content: &str) -> Result { - if let Some(length_over) = Message::overflow_length(content) { - return Err(Error::Client(ClientError::MessageTooLong(length_over))); - } - + pub fn send_message CreateMessage>(&self, f: F) -> Result { #[cfg(feature="cache")] { let req = permissions::SEND_MESSAGES; @@ -2205,7 +2197,7 @@ impl GuildChannel { } } - self.id.send_message(|m| m.content(content)) + self.id.send_message(f) } /// Unpins a [`Message`] in the channel given by its Id. -- cgit v1.2.3