massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stdlib / multiprocessing / managers.pyi
1 # NOTE: These are incomplete!
2
3 import queue
4 import sys
5 import threading
6 from contextlib import AbstractContextManager
7 from typing import Any, AnyStr, Callable, Generic, Iterable, Mapping, Sequence, Tuple, TypeVar
8
9 from .connection import Connection
10 from .context import BaseContext
11
12 if sys.version_info >= (3, 8):
13     from .shared_memory import _SLT, ShareableList, SharedMemory
14
15     _SharedMemory = SharedMemory
16     _ShareableList = ShareableList
17
18 if sys.version_info >= (3, 9):
19     from types import GenericAlias
20
21 _T = TypeVar("_T")
22 _KT = TypeVar("_KT")
23 _VT = TypeVar("_VT")
24
25 class Namespace:
26     def __init__(self, **kwds: Any) -> None: ...
27     def __getattr__(self, __name: str) -> Any: ...
28     def __setattr__(self, __name: str, __value: Any) -> None: ...
29
30 _Namespace = Namespace
31
32 class Token(object):
33     typeid: str | bytes | None
34     address: tuple[str | bytes, int]
35     id: str | bytes | int | None
36     def __init__(self, typeid: bytes | str | None, address: tuple[str | bytes, int], id: str | bytes | int | None) -> None: ...
37     def __repr__(self) -> str: ...
38     def __getstate__(self) -> tuple[str | bytes | None, tuple[str | bytes, int], str | bytes | int | None]: ...
39     def __setstate__(self, state: tuple[str | bytes | None, tuple[str | bytes, int], str | bytes | int | None]) -> None: ...
40
41 class BaseProxy(object):
42     _address_to_local: dict[Any, Any]
43     _mutex: Any
44     def __init__(
45         self,
46         token: Any,
47         serializer: str,
48         manager: Any = ...,
49         authkey: AnyStr | None = ...,
50         exposed: Any = ...,
51         incref: bool = ...,
52         manager_owned: bool = ...,
53     ) -> None: ...
54     def __deepcopy__(self, memo: Any | None) -> Any: ...
55     def _callmethod(self, methodname: str, args: Tuple[Any, ...] = ..., kwds: dict[Any, Any] = ...) -> None: ...
56     def _getvalue(self) -> Any: ...
57     def __reduce__(self) -> tuple[Any, tuple[Any, Any, str, dict[Any, Any]]]: ...
58
59 class ValueProxy(BaseProxy, Generic[_T]):
60     def get(self) -> _T: ...
61     def set(self, value: _T) -> None: ...
62     value: _T
63     if sys.version_info >= (3, 9):
64         def __class_getitem__(cls, item: Any) -> GenericAlias: ...
65
66 # Returned by BaseManager.get_server()
67 class Server:
68     address: Any
69     def __init__(
70         self, registry: dict[str, tuple[Callable[..., Any], Any, Any, Any]], address: Any, authkey: bytes, serializer: str
71     ) -> None: ...
72     def serve_forever(self) -> None: ...
73     def accept_connection(self, c: Connection, name: str) -> None: ...
74
75 class BaseManager(AbstractContextManager[BaseManager]):
76     def __init__(
77         self, address: Any | None = ..., authkey: bytes | None = ..., serializer: str = ..., ctx: BaseContext | None = ...
78     ) -> None: ...
79     def get_server(self) -> Server: ...
80     def connect(self) -> None: ...
81     def start(self, initializer: Callable[..., Any] | None = ..., initargs: Iterable[Any] = ...) -> None: ...
82     def shutdown(self) -> None: ...  # only available after start() was called
83     def join(self, timeout: float | None = ...) -> None: ...  # undocumented
84     @property
85     def address(self) -> Any: ...
86     @classmethod
87     def register(
88         cls,
89         typeid: str,
90         callable: Callable[..., Any] | None = ...,
91         proxytype: Any = ...,
92         exposed: Sequence[str] | None = ...,
93         method_to_typeid: Mapping[str, str] | None = ...,
94         create_method: bool = ...,
95     ) -> None: ...
96
97 # Conflicts with method names
98 _dict = dict
99 _list = list
100
101 class SyncManager(BaseManager, AbstractContextManager[SyncManager]):
102     def BoundedSemaphore(self, value: Any = ...) -> threading.BoundedSemaphore: ...
103     def Condition(self, lock: Any = ...) -> threading.Condition: ...
104     def Event(self) -> threading.Event: ...
105     def Lock(self) -> threading.Lock: ...
106     def Namespace(self) -> _Namespace: ...
107     def Queue(self, maxsize: int = ...) -> queue.Queue[Any]: ...
108     def RLock(self) -> threading.RLock: ...
109     def Semaphore(self, value: Any = ...) -> threading.Semaphore: ...
110     def Array(self, typecode: Any, sequence: Sequence[_T]) -> Sequence[_T]: ...
111     def Value(self, typecode: Any, value: _T) -> ValueProxy[_T]: ...
112     def dict(self, sequence: Mapping[_KT, _VT] = ...) -> _dict[_KT, _VT]: ...
113     def list(self, sequence: Sequence[_T] = ...) -> _list[_T]: ...
114
115 class RemoteError(Exception): ...
116
117 if sys.version_info >= (3, 8):
118     class SharedMemoryServer(Server): ...
119     class SharedMemoryManager(BaseManager):
120         def get_server(self) -> SharedMemoryServer: ...
121         def SharedMemory(self, size: int) -> _SharedMemory: ...
122         def ShareableList(self, sequence: Iterable[_SLT] | None) -> _ShareableList[_SLT]: ...