12345678910111213141516171819 |
- from ..types import Message, Context, Command
- from .base import Injector
- __all__ = [
- "Subcommand",
- ]
- class SubcommandInjector(Injector[Command]):
- async def inject(self, message: Message, context: Context) -> Command:
- subc = message.command.cache.get(SubcommandInjector.__name__, None)
- if subc is None:
- subc = message.command.get_subcommand()
- message.command.cache[SubcommandInjector.__name__] = subc
- return subc
- Subcommand = SubcommandInjector()
- # TODO Subcommand.Arg, .Args, .ArgList, .ArgListSplitOn, .ArgParse
|