Browse Source

[commands] Use `...` for `Command` and `Group` typing

pull/9292/head
Bryan Forbes 2 years ago
committed by GitHub
parent
commit
0ea098567c
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      discord/client.py
  2. 8
      discord/ext/commands/hybrid.py

4
discord/client.py

@ -1161,9 +1161,9 @@ class Client:
event: Literal['app_command_completion'],
/,
*,
check: Optional[Callable[[Interaction[Self], Union[Command[Any, Any, Any], ContextMenu]], bool]],
check: Optional[Callable[[Interaction[Self], Union[Command[Any, ..., Any], ContextMenu]], bool]],
timeout: Optional[float] = None,
) -> Tuple[Interaction[Self], Union[Command[Any, Any, Any], ContextMenu]]:
) -> Tuple[Interaction[Self], Union[Command[Any, ..., Any], ContextMenu]]:
...
# AutoMod

8
discord/ext/commands/hybrid.py

@ -72,9 +72,9 @@ __all__ = (
T = TypeVar('T')
U = TypeVar('U')
CogT = TypeVar('CogT', bound='Cog')
CommandT = TypeVar('CommandT', bound='Command[Any, Any, Any]')
CommandT = TypeVar('CommandT', bound='Command[Any, ..., Any]')
# CHT = TypeVar('CHT', bound='Check')
GroupT = TypeVar('GroupT', bound='Group[Any, Any, Any]')
GroupT = TypeVar('GroupT', bound='Group[Any, ..., Any]')
_NoneType = type(None)
if TYPE_CHECKING:
@ -297,7 +297,7 @@ def replace_parameters(
class HybridAppCommand(discord.app_commands.Command[CogT, P, T]):
def __init__(self, wrapped: Union[HybridCommand[CogT, Any, T], HybridGroup[CogT, Any, T]]) -> None:
def __init__(self, wrapped: Union[HybridCommand[CogT, ..., T], HybridGroup[CogT, ..., T]]) -> None:
signature = inspect.signature(wrapped.callback)
params = replace_parameters(wrapped.params, wrapped.callback, signature)
wrapped.callback.__signature__ = signature.replace(parameters=params)
@ -312,7 +312,7 @@ class HybridAppCommand(discord.app_commands.Command[CogT, P, T]):
finally:
del wrapped.callback.__signature__
self.wrapped: Union[HybridCommand[CogT, Any, T], HybridGroup[CogT, Any, T]] = wrapped
self.wrapped: Union[HybridCommand[CogT, ..., T], HybridGroup[CogT, ..., T]] = wrapped
self.binding: Optional[CogT] = wrapped.cog
# This technically means only one flag converter is supported
self.flag_converter: Optional[Tuple[str, Type[FlagConverter]]] = getattr(

Loading…
Cancel
Save