1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
|
import _compression
import sys
import zlib
from _typeshed import ReadableBuffer, SizedBuffer, StrOrBytesPath
from io import FileIO, TextIOWrapper
from typing import Final, Literal, Protocol, overload
from typing_extensions import TypeAlias
__all__ = ["BadGzipFile", "GzipFile", "open", "compress", "decompress"]
_ReadBinaryMode: TypeAlias = Literal["r", "rb"]
_WriteBinaryMode: TypeAlias = Literal["a", "ab", "w", "wb", "x", "xb"]
_OpenTextMode: TypeAlias = Literal["rt", "at", "wt", "xt"]
READ: Final[object] # undocumented
WRITE: Final[object] # undocumented
FTEXT: Final[int] # actually Literal[1] # undocumented
FHCRC: Final[int] # actually Literal[2] # undocumented
FEXTRA: Final[int] # actually Literal[4] # undocumented
FNAME: Final[int] # actually Literal[8] # undocumented
FCOMMENT: Final[int] # actually Literal[16] # undocumented
class _ReadableFileobj(Protocol):
def read(self, n: int, /) -> bytes: ...
def seek(self, n: int, /) -> object: ...
# The following attributes and methods are optional:
# name: str
# mode: str
# def fileno() -> int: ...
class _WritableFileobj(Protocol):
def write(self, b: bytes, /) -> object: ...
def flush(self) -> object: ...
# The following attributes and methods are optional:
# name: str
# mode: str
# def fileno() -> int: ...
@overload
def open(
filename: StrOrBytesPath | _ReadableFileobj,
mode: _ReadBinaryMode = "rb",
compresslevel: int = 9,
encoding: None = None,
errors: None = None,
newline: None = None,
) -> GzipFile: ...
@overload
def open(
filename: StrOrBytesPath | _WritableFileobj,
mode: _WriteBinaryMode,
compresslevel: int = 9,
encoding: None = None,
errors: None = None,
newline: None = None,
) -> GzipFile: ...
@overload
def open(
filename: StrOrBytesPath | _ReadableFileobj | _WritableFileobj,
mode: _OpenTextMode,
compresslevel: int = 9,
encoding: str | None = None,
errors: str | None = None,
newline: str | None = None,
) -> TextIOWrapper: ...
@overload
def open(
filename: StrOrBytesPath | _ReadableFileobj | _WritableFileobj,
mode: str,
compresslevel: int = 9,
encoding: str | None = None,
errors: str | None = None,
newline: str | None = None,
) -> GzipFile | TextIOWrapper: ...
class _PaddedFile:
file: _ReadableFileobj
def __init__(self, f: _ReadableFileobj, prepend: bytes = b"") -> None: ...
def read(self, size: int) -> bytes: ...
def prepend(self, prepend: bytes = b"") -> None: ...
def seek(self, off: int) -> int: ...
def seekable(self) -> bool: ...
class BadGzipFile(OSError): ...
class GzipFile(_compression.BaseStream):
myfileobj: FileIO | None
mode: object
name: str
compress: zlib._Compress
fileobj: _ReadableFileobj | _WritableFileobj
@overload
def __init__(
self,
filename: StrOrBytesPath | None,
mode: _ReadBinaryMode,
compresslevel: int = 9,
fileobj: _ReadableFileobj | None = None,
mtime: float | None = None,
) -> None: ...
@overload
def __init__(
self,
*,
mode: _ReadBinaryMode,
compresslevel: int = 9,
fileobj: _ReadableFileobj | None = None,
mtime: float | None = None,
) -> None: ...
@overload
def __init__(
self,
filename: StrOrBytesPath | None,
mode: _WriteBinaryMode,
compresslevel: int = 9,
fileobj: _WritableFileobj | None = None,
mtime: float | None = None,
) -> None: ...
@overload
def __init__(
self,
*,
mode: _WriteBinaryMode,
compresslevel: int = 9,
fileobj: _WritableFileobj | None = None,
mtime: float | None = None,
) -> None: ...
@overload
def __init__(
self,
filename: StrOrBytesPath | None = None,
mode: str | None = None,
compresslevel: int = 9,
fileobj: _ReadableFileobj | _WritableFileobj | None = None,
mtime: float | None = None,
) -> None: ...
if sys.version_info < (3, 12):
@property
def filename(self) -> str: ...
@property
def mtime(self) -> int | None: ...
crc: int
def write(self, data: ReadableBuffer) -> int: ...
def read(self, size: int | None = -1) -> bytes: ...
def read1(self, size: int = -1) -> bytes: ...
def peek(self, n: int) -> bytes: ...
def close(self) -> None: ...
def flush(self, zlib_mode: int = 2) -> None: ...
def fileno(self) -> int: ...
def rewind(self) -> None: ...
def seek(self, offset: int, whence: int = 0) -> int: ...
def readline(self, size: int | None = -1) -> bytes: ...
class _GzipReader(_compression.DecompressReader):
def __init__(self, fp: _ReadableFileobj) -> None: ...
def compress(data: SizedBuffer, compresslevel: int = 9, *, mtime: float | None = None) -> bytes: ...
def decompress(data: ReadableBuffer) -> bytes: ...
|