massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / coc-python-data / languageServer.0.5.59 / Typeshed / third_party / 2and3 / singledispatch.pyi
1 from typing import Any, Callable, Generic, Mapping, Optional, TypeVar, overload\r
2 \r
3 \r
4 _T = TypeVar("_T")\r
5 \r
6 \r
7 class _SingleDispatchCallable(Generic[_T]):\r
8     registry = ...  # type: Mapping[Any, Callable[..., _T]]\r
9     def dispatch(self, cls: Any) -> Callable[..., _T]: ...\r
10     @overload\r
11     def register(self, cls: Any) -> Callable[[Callable[..., _T]], Callable[..., _T]]: ...\r
12     @overload\r
13     def register(self, cls: Any, func: Callable[..., _T]) -> Callable[..., _T]: ...\r
14     def _clear_cache(self) -> None: ...\r
15     def __call__(self, *args: Any, **kwargs: Any) -> _T: ...\r
16 \r
17 def singledispatch(func: Callable[..., _T]) -> _SingleDispatchCallable[_T]: ...\r