@@ -802,51 +802,11 @@ impl Guild {
802802 members
803803 }
804804
805- /// Calculate a [`Member`]'s permissions in the guild.
806- #[ must_use]
807- #[ deprecated = "Use Guild::member_permissions_in, as this doesn't consider permission overwrites" ]
808- pub fn member_permissions ( & self , member : & Member ) -> Permissions {
809- Self :: user_permissions_in_ (
810- None ,
811- member. user . id ,
812- & member. roles ,
813- self . id ,
814- & self . roles ,
815- self . owner_id ,
816- )
817- }
818-
819- /// Calculate a [`PartialMember`]'s permissions in the guild.
820- ///
821- /// # Panics
822- ///
823- /// Panics if the passed [`UserId`] does not match the [`PartialMember`] id, if user is Some.
824- #[ must_use]
825- #[ deprecated = "Use Guild::partial_member_permissions_in, as this doesn't consider permission overwrites" ]
826- pub fn partial_member_permissions (
827- & self ,
828- member_id : UserId ,
829- member : & PartialMember ,
830- ) -> Permissions {
831- if let Some ( user) = & member. user {
832- assert_eq ! ( user. id, member_id, "User::id does not match provided PartialMember" ) ;
833- }
834-
835- Self :: user_permissions_in_ (
836- None ,
837- member_id,
838- & member. roles ,
839- self . id ,
840- & self . roles ,
841- self . owner_id ,
842- )
843- }
844-
845805 /// Calculate a [`Member`]'s permissions in a given channel in the guild.
846806 #[ must_use]
847807 pub fn user_permissions_in ( & self , channel : & GuildChannel , member : & Member ) -> Permissions {
848808 Self :: user_permissions_in_ (
849- Some ( channel) ,
809+ channel,
850810 member. user . id ,
851811 & member. roles ,
852812 self . id ,
@@ -872,7 +832,7 @@ impl Guild {
872832 }
873833
874834 Self :: user_permissions_in_ (
875- Some ( channel) ,
835+ channel,
876836 member_id,
877837 & member. roles ,
878838 self . id ,
@@ -883,7 +843,7 @@ impl Guild {
883843
884844 /// Helper function that can also be used from [`PartialGuild`].
885845 pub ( crate ) fn user_permissions_in_ (
886- channel : Option < & GuildChannel > ,
846+ channel : & GuildChannel ,
887847 member_user_id : UserId ,
888848 member_roles : & [ RoleId ] ,
889849 guild_id : GuildId ,
@@ -897,25 +857,23 @@ impl Guild {
897857 let mut member_allow_overwrites = Permissions :: empty ( ) ;
898858 let mut member_deny_overwrites = Permissions :: empty ( ) ;
899859
900- if let Some ( channel) = channel {
901- for overwrite in & channel. permission_overwrites {
902- match overwrite. kind {
903- PermissionOverwriteType :: Member ( user_id) => {
904- if member_user_id == user_id {
905- member_allow_overwrites = overwrite. allow ;
906- member_deny_overwrites = overwrite. deny ;
907- }
908- } ,
909- PermissionOverwriteType :: Role ( role_id) => {
910- if role_id. get ( ) == guild_id. get ( ) {
911- everyone_allow_overwrites = overwrite. allow ;
912- everyone_deny_overwrites = overwrite. deny ;
913- } else if member_roles. contains ( & role_id) {
914- roles_allow_overwrites. push ( overwrite. allow ) ;
915- roles_deny_overwrites. push ( overwrite. deny ) ;
916- }
917- } ,
918- }
860+ for overwrite in & channel. permission_overwrites {
861+ match overwrite. kind {
862+ PermissionOverwriteType :: Member ( user_id) => {
863+ if member_user_id == user_id {
864+ member_allow_overwrites = overwrite. allow ;
865+ member_deny_overwrites = overwrite. deny ;
866+ }
867+ } ,
868+ PermissionOverwriteType :: Role ( role_id) => {
869+ if role_id. get ( ) == guild_id. get ( ) {
870+ everyone_allow_overwrites = overwrite. allow ;
871+ everyone_deny_overwrites = overwrite. deny ;
872+ } else if member_roles. contains ( & role_id) {
873+ roles_allow_overwrites. push ( overwrite. allow ) ;
874+ roles_deny_overwrites. push ( overwrite. deny ) ;
875+ }
876+ } ,
919877 }
920878 }
921879
0 commit comments