massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / coc-python-data / languageServer.0.5.59 / Typeshed / stdlib / 2and3 / mmap.pyi
1 import sys\r
2 from typing import (Optional, Sequence, Union, Generic, overload,\r
3                     Iterable, Iterator, Sized, ContextManager, AnyStr)\r
4 \r
5 ACCESS_READ = ...  # type: int\r
6 ACCESS_WRITE = ...  # type: int\r
7 ACCESS_COPY = ...  # type: int\r
8 \r
9 ALLOCATIONGRANULARITY = ...  # type: int\r
10 \r
11 if sys.platform != 'win32':\r
12     MAP_PRIVATE = ...  # type: int\r
13     MAP_SHARED = ...  # type: int\r
14     PROT_READ = ...  # type: int\r
15     PROT_WRITE = ...  # type: int\r
16 \r
17     PAGESIZE = ...  # type: int\r
18 \r
19 class _mmap(Generic[AnyStr]):\r
20     if sys.platform == 'win32':\r
21         def __init__(self, fileno: int, length: int,\r
22                      tagname: Optional[str] = ..., access: int = ...,\r
23                      offset: int = ...) -> None: ...\r
24     else:\r
25         def __init__(self,\r
26                      fileno: int, length: int, flags: int = ...,\r
27                      prot: int = ..., access: int = ...,\r
28                      offset: int = ...) -> None: ...\r
29     def close(self) -> None: ...\r
30     def find(self, sub: AnyStr,\r
31              start: int = ..., end: int = ...) -> int: ...\r
32     def flush(self, offset: int = ..., size: int = ...) -> int: ...\r
33     def move(self, dest: int, src: int, count: int) -> None: ...\r
34     def read(self, n: int = ...) -> AnyStr: ...\r
35     def read_byte(self) -> AnyStr: ...\r
36     def readline(self) -> AnyStr: ...\r
37     def resize(self, newsize: int) -> None: ...\r
38     def seek(self, pos: int, whence: int = ...) -> None: ...\r
39     def size(self) -> int: ...\r
40     def tell(self) -> int: ...\r
41     def write(self, bytes: AnyStr) -> None: ...\r
42     def write_byte(self, byte: AnyStr) -> None: ...\r
43     def __len__(self) -> int: ...\r
44 \r
45 if sys.version_info >= (3,):\r
46     class mmap(_mmap, ContextManager[mmap], Iterable[bytes], Sized):\r
47         closed = ...  # type: bool\r
48         def rfind(self, sub: bytes, start: int = ..., stop: int = ...) -> int: ...\r
49         @overload\r
50         def __getitem__(self, index: int) -> int: ...\r
51         @overload\r
52         def __getitem__(self, index: slice) -> bytes: ...\r
53         def __delitem__(self, index: Union[int, slice]) -> None: ...\r
54         @overload\r
55         def __setitem__(self, index: int, object: int) -> None: ...\r
56         @overload\r
57         def __setitem__(self, index: slice, object: bytes) -> None: ...\r
58         # Doesn't actually exist, but the object is actually iterable because it has __getitem__ and\r
59         # __len__, so we claim that there is also an __iter__ to help type checkers.\r
60         def __iter__(self) -> Iterator[bytes]: ...\r
61 else:\r
62     class mmap(_mmap, Sequence[bytes]):\r
63         def rfind(self, string: bytes, start: int = ..., stop: int = ...) -> int: ...\r
64         def __getitem__(self, index: Union[int, slice]) -> bytes: ...\r
65         def __getslice__(self, i: Optional[int], j: Optional[int]) -> bytes: ...\r
66         def __delitem__(self, index: Union[int, slice]) -> None: ...\r
67         def __setitem__(self, index: Union[int, slice], object: bytes) -> None: ...\r