aboutsummaryrefslogtreecommitdiff
path: root/src/model/guild/partial_guild.rs
diff options
context:
space:
mode:
authorZeyla Hellyer <[email protected]>2017-04-13 20:45:56 -0700
committerZeyla Hellyer <[email protected]>2017-04-19 14:53:32 -0700
commit3f03f9adc97315bb61a5c71f52365306cb8e2d1a (patch)
tree8fe0b518d1450b0657cfb75f56251fd90120807e /src/model/guild/partial_guild.rs
parentUpdate the way errors are handled in dispatch (diff)
downloadserenity-3f03f9adc97315bb61a5c71f52365306cb8e2d1a.tar.xz
serenity-3f03f9adc97315bb61a5c71f52365306cb8e2d1a.zip
Deprecate methods prefixed with `get_`
A lot of structs - such as `Guild` or `ChannelId` - have methods with prefixes of `get_`, which are generally discouraged. To fix this, deprecate them and remove them in v0.3.0.
Diffstat (limited to 'src/model/guild/partial_guild.rs')
-rw-r--r--src/model/guild/partial_guild.rs245
1 files changed, 168 insertions, 77 deletions
diff --git a/src/model/guild/partial_guild.rs b/src/model/guild/partial_guild.rs
index b6d027a..2be0ae2 100644
--- a/src/model/guild/partial_guild.rs
+++ b/src/model/guild/partial_guild.rs
@@ -57,6 +57,24 @@ impl PartialGuild {
self.id.ban(user, delete_message_days)
}
+ /// Gets a list of the guild's bans.
+ ///
+ /// Requires the [Ban Members] permission.
+ ///
+ /// [Ban Members]: permissions/constant.BAN_MEMBERS.html
+ #[inline]
+ pub fn bans(&self) -> Result<Vec<Ban>> {
+ self.id.bans()
+ }
+
+ /// Gets all of the guild's channels over the REST API.
+ ///
+ /// [`Guild`]: struct.Guild.html
+ #[inline]
+ pub fn channels(&self) -> Result<HashMap<ChannelId, GuildChannel>> {
+ self.id.channels()
+ }
+
/// Creates a [`GuildChannel`] in the guild.
///
/// Refer to [`rest::create_channel`] for more information.
@@ -264,58 +282,57 @@ impl PartialGuild {
self.id.edit_nickname(new_nickname)
}
- /// Gets a partial amount of guild data by its Id.
+ /// Gets an emoji in the guild by Id.
///
- /// Requires that the current user be in the guild.
+ /// Requires the [Manage Emojis] permission.
+ ///
+ /// [Manage Emojis]: permissions/constant.MANAGE_EMOJIS.html
#[inline]
- pub fn get<G: Into<GuildId>>(guild_id: G) -> Result<PartialGuild> {
- guild_id.into().get()
+ pub fn emoji<E: Into<EmojiId>>(&self, emoji_id: E) -> Result<Emoji> {
+ self.id.emoji(emoji_id)
}
- /// Gets a list of the guild's bans.
+ /// Gets a list of all of the guild's emojis.
///
- /// Requires the [Ban Members] permission.
+ /// Requires the [Manage Emojis] permission.
///
- /// [Ban Members]: permissions/constant.BAN_MEMBERS.html
+ /// [Manage Emojis]: permissions/constant.MANAGE_EMOJIS.html
#[inline]
- pub fn get_bans(&self) -> Result<Vec<Ban>> {
- self.id.get_bans()
+ pub fn emojis(&self) -> Result<Vec<Emoji>> {
+ self.id.emojis()
}
- /// Gets all of the guild's channels over the REST API.
+ /// Gets a partial amount of guild data by its Id.
///
- /// [`Guild`]: struct.Guild.html
+ /// Requires that the current user be in the guild.
#[inline]
- pub fn get_channels(&self) -> Result<HashMap<ChannelId, GuildChannel>> {
- self.id.get_channels()
+ pub fn get<G: Into<GuildId>>(guild_id: G) -> Result<PartialGuild> {
+ guild_id.into().get()
}
- /// Gets an emoji in the guild by Id.
+ /// Kicks a [`Member`] from the guild.
///
- /// Requires the [Manage Emojis] permission.
+ /// Requires the [Kick Members] permission.
///
- /// [Manage Emojis]: permissions/constant.MANAGE_EMOJIS.html
+ /// [`Member`]: struct.Member.html
+ /// [Kick Members]: permissions/constant.KICK_MEMBERS.html
#[inline]
- pub fn get_emoji<E: Into<EmojiId>>(&self, emoji_id: E) -> Result<Emoji> {
- self.id.get_emoji(emoji_id)
+ pub fn kick<U: Into<UserId>>(&self, user_id: U) -> Result<()> {
+ self.id.kick(user_id)
}
- /// Gets a list of all of the guild's emojis.
- ///
- /// Requires the [Manage Emojis] permission.
- ///
- /// [Manage Emojis]: permissions/constant.MANAGE_EMOJIS.html
- #[inline]
- pub fn get_emojis(&self) -> Result<Vec<Emoji>> {
- self.id.get_emojis()
+ /// Returns a formatted URL of the guild's icon, if the guild has an icon.
+ pub fn icon_url(&self) -> Option<String> {
+ self.icon.as_ref().map(|icon|
+ format!(cdn!("/icons/{}/{}.webp"), self.id, icon))
}
/// Gets all integration of the guild.
///
/// This performs a request over the REST API.
#[inline]
- pub fn get_integrations(&self) -> Result<Vec<Integration>> {
- self.id.get_integrations()
+ pub fn integrations(&self) -> Result<Vec<Integration>> {
+ self.id.integrations()
}
/// Gets all of the guild's invites.
@@ -324,16 +341,22 @@ impl PartialGuild {
///
/// [Manage Guild]: permissions/constant.MANAGE_GUILD.html
#[inline]
- pub fn get_invites(&self) -> Result<Vec<RichInvite>> {
- self.id.get_invites()
+ pub fn invites(&self) -> Result<Vec<RichInvite>> {
+ self.id.invites()
+ }
+
+ /// Leaves the guild.
+ #[inline]
+ pub fn leave(&self) -> Result<PartialGuild> {
+ self.id.leave()
}
/// Gets a user's [`Member`] for the guild by Id.
///
/// [`Guild`]: struct.Guild.html
/// [`Member`]: struct.Member.html
- pub fn get_member<U: Into<UserId>>(&self, user_id: U) -> Result<Member> {
- self.id.get_member(user_id)
+ pub fn member<U: Into<UserId>>(&self, user_id: U) -> Result<Member> {
+ self.id.member(user_id)
}
/// Gets a list of the guild's members.
@@ -343,65 +366,32 @@ impl PartialGuild {
/// [`User`]'s Id.
///
/// [`User`]: struct.User.html
- pub fn get_members<U>(&self, limit: Option<u64>, after: Option<U>)
+ pub fn members<U>(&self, limit: Option<u64>, after: Option<U>)
-> Result<Vec<Member>> where U: Into<UserId> {
- self.id.get_members(limit, after)
- }
-
- /// Gets the number of [`Member`]s that would be pruned with the given
- /// number of days.
- ///
- /// Requires the [Kick Members] permission.
- ///
- /// [`Member`]: struct.Member.html
- /// [Kick Members]: permissions/constant.KICK_MEMBERS.html
- #[inline]
- pub fn get_prune_count(&self, days: u16) -> Result<GuildPrune> {
- self.id.get_prune_count(days)
+ self.id.members(limit, after)
}
- /// Retrieves the guild's webhooks.
+ /// Moves a member to a specific voice channel.
///
- /// **Note**: Requires the [Manage Webhooks] permission.
+ /// Requires the [Move Members] permission.
///
- /// [Manage Webhooks]: permissions/constant.MANAGE_WEBHOOKS.html
+ /// [Move Members]: permissions/constant.MOVE_MEMBERS.html
#[inline]
- pub fn get_webhooks(&self) -> Result<Vec<Webhook>> {
- self.id.get_webhooks()
+ pub fn move_member<C, U>(&self, user_id: U, channel_id: C) -> Result<()>
+ where C: Into<ChannelId>, U: Into<UserId> {
+ self.id.move_member(user_id, channel_id)
}
- /// Kicks a [`Member`] from the guild.
+ /// Gets the number of [`Member`]s that would be pruned with the given
+ /// number of days.
///
/// Requires the [Kick Members] permission.
///
/// [`Member`]: struct.Member.html
/// [Kick Members]: permissions/constant.KICK_MEMBERS.html
#[inline]
- pub fn kick<U: Into<UserId>>(&self, user_id: U) -> Result<()> {
- self.id.kick(user_id)
- }
-
- /// Returns a formatted URL of the guild's icon, if the guild has an icon.
- pub fn icon_url(&self) -> Option<String> {
- self.icon.as_ref().map(|icon|
- format!(cdn!("/icons/{}/{}.webp"), self.id, icon))
- }
-
- /// Leaves the guild.
- #[inline]
- pub fn leave(&self) -> Result<PartialGuild> {
- self.id.leave()
- }
-
- /// Moves a member to a specific voice channel.
- ///
- /// Requires the [Move Members] permission.
- ///
- /// [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> {
- self.id.move_member(user_id, channel_id)
+ pub fn prune_count(&self, days: u16) -> Result<GuildPrune> {
+ self.id.prune_count(days)
}
/// Returns the Id of the shard associated with the guild.
@@ -472,4 +462,105 @@ impl PartialGuild {
pub fn unban<U: Into<UserId>>(&self, user_id: U) -> Result<()> {
self.id.unban(user_id)
}
+
+ /// Retrieves the guild's webhooks.
+ ///
+ /// **Note**: Requires the [Manage Webhooks] permission.
+ ///
+ /// [Manage Webhooks]: permissions/constant.MANAGE_WEBHOOKS.html
+ #[inline]
+ pub fn webhooks(&self) -> Result<Vec<Webhook>> {
+ self.id.webhooks()
+ }
+
+ /// Alias of [`bans`].
+ ///
+ /// [`bans`]: #method.bans
+ #[deprecated(since="0.1.5", note="Use `bans` instead.")]
+ #[inline]
+ pub fn get_bans(&self) -> Result<Vec<Ban>> {
+ self.bans()
+ }
+
+ /// Alias of [`channels`].
+ ///
+ /// [`channels`]: #method.channels
+ #[deprecated(since="0.1.5", note="Use `channels` instead.")]
+ #[inline]
+ pub fn get_channels(&self) -> Result<HashMap<ChannelId, GuildChannel>> {
+ self.channels()
+ }
+
+ /// Alias of [`emoji`].
+ ///
+ /// [`emoji`]: #method.emoji
+ #[deprecated(since="0.1.5", note="Use `emoji` instead.")]
+ #[inline]
+ pub fn get_emoji<E: Into<EmojiId>>(&self, emoji_id: E) -> Result<Emoji> {
+ self.emoji(emoji_id)
+ }
+
+ /// Alias of [`emojis`].
+ ///
+ /// [`emojis`]: #method.emojis
+ #[deprecated(since="0.1.5", note="Use `emojis` instead.")]
+ #[inline]
+ pub fn get_emojis(&self) -> Result<Vec<Emoji>> {
+ self.emojis()
+ }
+
+ /// Alias of [`integrations`].
+ ///
+ /// [`integrations`]: #method.integrations
+ #[deprecated(since="0.1.5", note="Use `integrations` instead.")]
+ #[inline]
+ pub fn get_integrations(&self) -> Result<Vec<Integration>> {
+ self.integrations()
+ }
+
+ /// Alias of [`invites`].
+ ///
+ /// [`invites`]: #method.invites
+ #[deprecated(since="0.1.5", note="Use `invites` instead.")]
+ #[inline]
+ pub fn get_invites(&self) -> Result<Vec<RichInvite>> {
+ self.invites()
+ }
+
+ /// Alias of [`member`].
+ ///
+ /// [`member`]: #method.member
+ #[deprecated(since="0.1.5", note="Use `member` instead.")]
+ #[inline]
+ pub fn get_member<U: Into<UserId>>(&self, user_id: U) -> Result<Member> {
+ self.member(user_id)
+ }
+
+ /// Alias of [`members`].
+ ///
+ /// [`members`]: #method.members
+ #[deprecated(since="0.1.5", note="Use `members` instead.")]
+ #[inline]
+ pub fn get_members<U>(&self, limit: Option<u64>, after: Option<U>)
+ -> Result<Vec<Member>> where U: Into<UserId> {
+ self.members(limit, after)
+ }
+
+ /// Alias of [`prune_count`].
+ ///
+ /// [`prune_count`]: #method.prune_count
+ #[deprecated(since="0.1.5", note="Use `prune_count` instead.")]
+ #[inline]
+ pub fn get_prune_count(&self, days: u16) -> Result<GuildPrune> {
+ self.prune_count(days)
+ }
+
+ /// Alias of [`webhooks`].
+ ///
+ /// [`webhooks`]: #method.webhooks
+ #[deprecated(since="0.1.5", note="Use `webhooks` instead.")]
+ #[inline]
+ pub fn get_webhooks(&self) -> Result<Vec<Webhook>> {
+ self.webhooks()
+ }
}