Skip to content

Commit 18d9582

Browse files
authored
Fix clippy warning (#3081)
1 parent 7e90b9d commit 18d9582

File tree

1 file changed

+12
-14
lines changed

1 file changed

+12
-14
lines changed

src/model/permissions.rs

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ use super::utils::StrOrInt;
8585
/// }
8686
/// }
8787
/// ```
88+
#[expect(unused_macro_rules)] // Remove once at least one variant is deprecated
8889
macro_rules! generate_permissions {
8990
{$ (
9091
$(#[doc = $doc:literal])*
@@ -95,7 +96,7 @@ macro_rules! generate_permissions {
9596
impl Permissions: u64 {
9697
$(
9798
$(#[doc = $doc])*
98-
$(#[deprecated = $deprecated])*
99+
$(#[deprecated = $deprecated])?
99100
const $perm_upper = $value;
100101
)*
101102
}
@@ -109,8 +110,8 @@ macro_rules! generate_permissions {
109110
#[must_use]
110111
$(
111112
#[deprecated = $deprecated]
112-
#[allow(deprecated)]
113-
)*
113+
#[expect(deprecated)]
114+
)?
114115
pub fn $perm_lower(self) -> bool {
115116
self.contains(Self::$perm_upper)
116117
}
@@ -119,26 +120,23 @@ macro_rules! generate_permissions {
119120
/// Returns a list of names of all contained permissions.
120121
#[must_use]
121122
#[cfg(feature = "model")]
122-
#[allow(deprecated, unused_mut, unused_assignments)]
123123
pub fn get_permission_names(self) -> Vec<&'static str> {
124124
let mut names = Vec::new();
125125

126126
$(
127-
let mut is_deprecated = false;
128-
$(
129-
let _ = $deprecated;
130-
is_deprecated = true;
131-
)*
132-
133-
if !is_deprecated && self.$perm_lower() {
134-
names.push($name);
135-
}
127+
generate_permissions!(@append_name: $($deprecated)? self, names, $perm_lower, $name);
136128
)*
137129

138130
names
139131
}
140132
}
141-
}
133+
};
134+
(@append_name: $self:ident, $vec:ident, $perm_lower:ident, $name:literal) => {
135+
if $self.$perm_lower() {
136+
$vec.push($name);
137+
}
138+
};
139+
(@append_name: $deprecated:literal $self:ident, $vec:ident, $perm_lower:ident, $name:literal) => {};
142140
}
143141

144142
/// Returns a set of permissions with the original @everyone permissions set to true.

0 commit comments

Comments
 (0)