diff options
author | 2021-05-16 15:27:58 +0100 | |
---|---|---|
committer | 2021-05-16 15:27:58 +0100 | |
commit | 0585e210949ef808417d181579081416fa73fd18 (patch) | |
tree | d5f3a9102f420506f823ee9593857b4098d1af38 /bot/command.py | |
parent | Change authors value in pyproject.toml (diff) | |
parent | Spring cleanup (#718) (diff) |
Merge branch 'main' into pipenv-to-poetry
Diffstat (limited to 'bot/command.py')
-rw-r--r-- | bot/command.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bot/command.py b/bot/command.py new file mode 100644 index 00000000..0fb900f7 --- /dev/null +++ b/bot/command.py @@ -0,0 +1,18 @@ +from discord.ext import commands + + +class Command(commands.Command): + """ + A `discord.ext.commands.Command` subclass which supports root aliases. + + A `root_aliases` keyword argument is added, which is a sequence of alias names that will act as + top-level commands rather than being aliases of the command's group. It's stored as an attribute + also named `root_aliases`. + """ + + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self.root_aliases = kwargs.get("root_aliases", []) + + if not isinstance(self.root_aliases, (list, tuple)): + raise TypeError("Root aliases of a command must be a list or a tuple of strings.") |