massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / coc-python-data / languageServer.0.5.59 / Typeshed / stdlib / 3.4 / selectors.pyi
1 # Stubs for selector\r
2 # See https://docs.python.org/3/library/selectors.html\r
3 \r
4 from typing import Any, List, NamedTuple, Mapping, Tuple, Optional, Union\r
5 from abc import ABCMeta, abstractmethod\r
6 import socket\r
7 \r
8 \r
9 # Type aliases added mainly to preserve some context\r
10 #\r
11 # See https://github.com/python/typeshed/issues/482\r
12 # for details regarding how _FileObject is typed.\r
13 _FileObject = Union[int, socket.socket]\r
14 _FileDescriptor = int\r
15 _EventMask = int\r
16 \r
17 \r
18 EVENT_READ = ...  # type: _EventMask\r
19 EVENT_WRITE = ...  # type: _EventMask\r
20 \r
21 \r
22 SelectorKey = NamedTuple('SelectorKey', [\r
23     ('fileobj', _FileObject),\r
24     ('fd', _FileDescriptor),\r
25     ('events', _EventMask),\r
26     ('data', Any)\r
27 ])\r
28 \r
29 \r
30 class BaseSelector(metaclass=ABCMeta):\r
31     @abstractmethod\r
32     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
33 \r
34     @abstractmethod\r
35     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
36 \r
37     def modify(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
38 \r
39     @abstractmethod\r
40     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
41 \r
42     def close(self) -> None: ...\r
43 \r
44     def get_key(self, fileobj: _FileObject) -> SelectorKey: ...\r
45 \r
46     @abstractmethod\r
47     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r
48 \r
49     def __enter__(self) -> BaseSelector: ...\r
50 \r
51     def __exit__(self, *args: Any) -> None: ...\r
52 \r
53 class SelectSelector(BaseSelector):\r
54     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
55     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
56     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
57     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r
58 \r
59 class PollSelector(BaseSelector):\r
60     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
61     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
62     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
63     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r
64 \r
65 class EpollSelector(BaseSelector):\r
66     def fileno(self) -> int: ...\r
67     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
68     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
69     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
70     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r
71 \r
72 class DevpollSelector(BaseSelector):\r
73     def fileno(self) -> int: ...\r
74     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
75     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
76     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
77     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r
78 \r
79 class KqueueSelector(BaseSelector):\r
80     def fileno(self) -> int: ...\r
81     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
82     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
83     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
84     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r
85 \r
86 class DefaultSelector(BaseSelector):\r
87     def register(self, fileobj: _FileObject, events: _EventMask, data: Any = ...) -> SelectorKey: ...\r
88     def unregister(self, fileobj: _FileObject) -> SelectorKey: ...\r
89     def select(self, timeout: Optional[float] = ...) -> List[Tuple[SelectorKey, _EventMask]]: ...\r
90     def get_map(self) -> Mapping[_FileObject, SelectorKey]: ...\r