diff --git a/discord/ext/commands/bot.py b/discord/ext/commands/bot.py index cba7d1e0a..7c49bf961 100644 --- a/discord/ext/commands/bot.py +++ b/discord/ext/commands/bot.py @@ -548,7 +548,7 @@ class BotBase(GroupMixin): return self.__cogs.get(name) def remove_cog(self, name): - """Removes a cog from the bot. + """Removes a cog from the bot and returns it. All registered commands and event listeners that the cog has registered will be removed as well. @@ -559,6 +559,11 @@ class BotBase(GroupMixin): ----------- name: :class:`str` The name of the cog to remove. + + Returns + ------- + Optional[:class:`.Cog`] + The cog that was removed. ``None`` if not found. """ cog = self.__cogs.pop(name, None) @@ -570,6 +575,8 @@ class BotBase(GroupMixin): help_command.cog = None cog._eject(self) + return cog + @property def cogs(self): """Mapping[:class:`str`, :class:`Cog`]: A read-only mapping of cog name to cog."""