aboutsummaryrefslogtreecommitdiff
path: root/src/model/guild
diff options
context:
space:
mode:
authorZeyla Hellyer <[email protected]>2018-09-05 17:09:12 -0700
committerZeyla Hellyer <[email protected]>2018-09-05 17:09:41 -0700
commit669da407111f924a5dc498c15c0c0b43f7b42411 (patch)
treef3b553a729a789d283c978581a19eef36707c608 /src/model/guild
parentFix `has_correct_permissions` when no guild is available (#376) (diff)
downloadserenity-669da407111f924a5dc498c15c0c0b43f7b42411.tar.xz
serenity-669da407111f924a5dc498c15c0c0b43f7b42411.zip
Add Member::user_id
Adds a `user_id` method to `Member`, which is a shortcut for retrieving the member's user ID.
Diffstat (limited to 'src/model/guild')
-rw-r--r--src/model/guild/member.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/model/guild/member.rs b/src/model/guild/member.rs
index 0aa7dd0..34f2af1 100644
--- a/src/model/guild/member.rs
+++ b/src/model/guild/member.rs
@@ -453,6 +453,20 @@ impl Member {
pub fn unban(&self) -> Result<()> {
http::remove_ban(self.guild_id.0, self.user.read().id.0)
}
+
+ /// Retrieves the member's user ID.
+ ///
+ /// This is a shortcut for accessing the [`user`] structfield, retrieving a
+ /// reader guard, and then copying its ID.
+ ///
+ /// # Deadlocking
+ ///
+ /// This function can deadlock while retrieving a read guard to the user
+ /// object if your application infinitely holds a write lock elsewhere.
+ #[cfg(feature = "cache")]
+ pub fn user_id(&self) -> UserId {
+ self.user.read().id
+ }
}
impl Display for Member {