mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-01-26 04:46:46 +08:00
Replacing Callable[[T], T] with callback protocol in click (#4045)
This commit is contained in:
27
third_party/2and3/click/decorators.pyi
vendored
27
third_party/2and3/click/decorators.pyi
vendored
@@ -1,13 +1,14 @@
|
||||
from distutils.version import Version
|
||||
from typing import Any, Callable, Dict, List, Optional, Tuple, Type, TypeVar, Union, Text, overload
|
||||
from typing import Any, Callable, Dict, List, Optional, Tuple, Type, TypeVar, Union, Text, overload, Protocol
|
||||
|
||||
from click.core import Command, Group, Argument, Option, Parameter, Context, _ConvertibleType
|
||||
|
||||
_T = TypeVar('_T')
|
||||
_F = TypeVar('_F', bound=Callable[..., Any])
|
||||
|
||||
# Until https://github.com/python/mypy/issues/3924 is fixed you can't do the following:
|
||||
# _Decorator = Callable[[_F], _F]
|
||||
class _IdentityFunction(Protocol):
|
||||
def __call__(self, __x: _T) -> _T: ...
|
||||
|
||||
|
||||
_Callback = Callable[
|
||||
[Context, Union[Option, Parameter], Any],
|
||||
@@ -24,7 +25,7 @@ def pass_obj(__f: _T) -> _T:
|
||||
|
||||
def make_pass_decorator(
|
||||
object_type: type, ensure: bool = ...
|
||||
) -> Callable[[_T], _T]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -85,7 +86,7 @@ def argument(
|
||||
is_eager: bool = ...,
|
||||
envvar: Optional[Union[str, List[str]]] = ...,
|
||||
autocompletion: Optional[Callable[[Any, List[str], str], List[Union[str, Tuple[str, str]]]]] = ...,
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -117,7 +118,7 @@ def option(
|
||||
envvar: Optional[Union[str, List[str]]] = ...,
|
||||
# User-defined
|
||||
**kwargs: Any,
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -149,7 +150,7 @@ def option(
|
||||
envvar: Optional[Union[str, List[str]]] = ...,
|
||||
# User-defined
|
||||
**kwargs: Any,
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -181,7 +182,7 @@ def option(
|
||||
envvar: Optional[Union[str, List[str]]] = ...,
|
||||
# User-defined
|
||||
**kwargs: Any,
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -213,7 +214,7 @@ def option(
|
||||
envvar: Optional[Union[str, List[str]]] = ...,
|
||||
# User-defined
|
||||
**kwargs: Any,
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -241,7 +242,7 @@ def confirmation_option(
|
||||
expose_value: bool = ...,
|
||||
is_eager: bool = ...,
|
||||
envvar: Optional[Union[str, List[str]]] = ...
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -269,7 +270,7 @@ def password_option(
|
||||
expose_value: bool = ...,
|
||||
is_eager: bool = ...,
|
||||
envvar: Optional[Union[str, List[str]]] = ...
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -300,7 +301,7 @@ def version_option(
|
||||
expose_value: bool = ...,
|
||||
is_eager: bool = ...,
|
||||
envvar: Optional[Union[str, List[str]]] = ...
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
|
||||
@@ -328,5 +329,5 @@ def help_option(
|
||||
expose_value: bool = ...,
|
||||
is_eager: bool = ...,
|
||||
envvar: Optional[Union[str, List[str]]] = ...
|
||||
) -> Callable[[_F], _F]:
|
||||
) -> _IdentityFunction:
|
||||
...
|
||||
|
||||
Reference in New Issue
Block a user