aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar MarkKoz <[email protected]>2020-08-01 09:00:00 -0700
committerGravatar MarkKoz <[email protected]>2020-08-01 09:00:00 -0700
commitd96e605162d40f8890bdc57734631a0cc47b8e13 (patch)
tree91fe10c75c8e5b20db34521ba29e3bfe291347e1
parentDecorators: fix type annotations for checks (diff)
Explicitly use kwarg with respect_role_hierarchy
Clarify the significance of the argument being passed.
-rw-r--r--bot/cogs/moderation/infractions.py4
-rw-r--r--bot/decorators.py6
2 files changed, 5 insertions, 5 deletions
diff --git a/bot/cogs/moderation/infractions.py b/bot/cogs/moderation/infractions.py
index d720c2911..b68b5f117 100644
--- a/bot/cogs/moderation/infractions.py
+++ b/bot/cogs/moderation/infractions.py
@@ -230,7 +230,7 @@ class Infractions(InfractionScheduler, commands.Cog):
await self.apply_infraction(ctx, infraction, user, action())
- @respect_role_hierarchy(2)
+ @respect_role_hierarchy(member_arg=2)
async def apply_kick(self, ctx: Context, user: Member, reason: t.Optional[str], **kwargs) -> None:
"""Apply a kick infraction with kwargs passed to `post_infraction`."""
infraction = await utils.post_infraction(ctx, user, "kick", reason, active=False, **kwargs)
@@ -245,7 +245,7 @@ class Infractions(InfractionScheduler, commands.Cog):
action = user.kick(reason=reason)
await self.apply_infraction(ctx, infraction, user, action)
- @respect_role_hierarchy(2)
+ @respect_role_hierarchy(member_arg=2)
async def apply_ban(self, ctx: Context, user: UserSnowflake, reason: t.Optional[str], **kwargs) -> None:
"""
Apply a ban infraction with kwargs passed to `post_infraction`.
diff --git a/bot/decorators.py b/bot/decorators.py
index 96f0d1408..0e84cf37e 100644
--- a/bot/decorators.py
+++ b/bot/decorators.py
@@ -224,14 +224,14 @@ def redirect_output(destination_channel: int, bypass_roles: t.Container[int] = N
return wrap
-def respect_role_hierarchy(name_or_pos: function.Argument) -> t.Callable:
+def respect_role_hierarchy(member_arg: function.Argument) -> t.Callable:
"""
Ensure the highest role of the invoking member is greater than that of the target member.
If the condition fails, a warning is sent to the invoking context. A target which is not an
instance of discord.Member will always pass.
- `name_or_pos` is the keyword name or position index of the parameter of the decorated command
+ `member_arg` is the keyword name or position index of the parameter of the decorated command
whose value is the target member.
This decorator must go before (below) the `command` decorator.
@@ -242,7 +242,7 @@ def respect_role_hierarchy(name_or_pos: function.Argument) -> t.Callable:
log.trace(f"{func.__name__}: respect role hierarchy decorator called")
bound_args = function.get_bound_args(func, args, kwargs)
- target = function.get_arg_value(name_or_pos, bound_args)
+ target = function.get_arg_value(member_arg, bound_args)
if not isinstance(target, Member):
log.trace("The target is not a discord.Member; skipping role hierarchy check.")