mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-01-01 17:13:24 +08:00
improve io (#194)
* added types to io, some version-specific variants * remove _io (moved the classes to io) * remove internal, unused xml.etree._ListDataStream
This commit is contained in:
committed by
Guido van Rossum
parent
33fe6a0685
commit
9fdac6e0df
@@ -1,48 +0,0 @@
|
||||
# Stubs for _io (Python 3.4)
|
||||
#
|
||||
# NOTE: This dynamically typed stub was automatically generated by stubgen.
|
||||
|
||||
from typing import Any
|
||||
|
||||
class _IOBase:
|
||||
def __init__(self, *args, **kwargs) -> None: ...
|
||||
@property
|
||||
def closed(self): ...
|
||||
def close(self): ...
|
||||
def fileno(self): ...
|
||||
def flush(self): ...
|
||||
def isatty(self): ...
|
||||
def readable(self): ...
|
||||
def readline(self, size: int = ...): ...
|
||||
def readlines(self, hint: int = ...): ...
|
||||
def seek(self, offset, whence=...): ...
|
||||
def seekable(self): ...
|
||||
def tell(self): ...
|
||||
def truncate(self, size: int = ...) -> int: ...
|
||||
def writable(self): ...
|
||||
def writelines(self, lines): ...
|
||||
def __del__(self): ...
|
||||
def __enter__(self): ...
|
||||
def __exit__(self, exc_type, exc_val, exc_tb): ...
|
||||
def __iter__(self): ...
|
||||
def __next__(self): ...
|
||||
|
||||
class _BufferedIOBase(_IOBase):
|
||||
def detach(self): ...
|
||||
def read(self, size: int = ...): ...
|
||||
def read1(self, size: int = ...): ...
|
||||
def readinto(self, b): ...
|
||||
def write(self, b): ...
|
||||
|
||||
class _RawIOBase(_IOBase):
|
||||
def read(self, size: int = ...): ...
|
||||
def readall(self): ...
|
||||
|
||||
class _TextIOBase(_IOBase):
|
||||
encoding = ... # type: Any
|
||||
errors = ... # type: Any
|
||||
newlines = ... # type: Any
|
||||
def detach(self): ...
|
||||
def read(self, size: int = ...): ...
|
||||
def readline(self, size: int = ...): ...
|
||||
def write(self, b): ...
|
||||
250
stdlib/3/io.pyi
250
stdlib/3/io.pyi
@@ -1,150 +1,164 @@
|
||||
# Stubs for io
|
||||
|
||||
# Based on http://docs.python.org/3.2/library/io.html
|
||||
|
||||
from typing import List, BinaryIO, TextIO, IO, overload, Iterator, Iterable, Any
|
||||
from typing import (
|
||||
List, BinaryIO, TextIO, Iterator, Union, Optional, Callable, Tuple
|
||||
)
|
||||
import builtins
|
||||
import codecs
|
||||
import _io
|
||||
import sys
|
||||
from types import TracebackType
|
||||
|
||||
DEFAULT_BUFFER_SIZE = ... # type: int
|
||||
|
||||
DEFAULT_BUFFER_SIZE = 0 # type: int
|
||||
SEEK_SET = ... # type: int
|
||||
SEEK_CUR = ... # type: int
|
||||
SEEK_END = ... # type: int
|
||||
|
||||
open = builtins.open
|
||||
|
||||
class BlockingIOError(OSError): ...
|
||||
class UnsupportedOperation(ValueError, OSError): ...
|
||||
# FIXME when mypy handle condtional, we can uncomment the next block and remove
|
||||
# the temporary fix
|
||||
#if sys.version_info >= (3, 3):
|
||||
# BlockingIOError = BlockingIOError
|
||||
# class UnsupportedOperation(OSError, ValueError): ...
|
||||
#else:
|
||||
# class BlockingIOError(IOError):
|
||||
# characters_written = ... # type: int
|
||||
# class UnsupportedOperation(IOError, ValueError): ...
|
||||
class BlockingIOError(OSError):
|
||||
characters_written = ... # type: int
|
||||
class UnsupportedOperation(OSError, ValueError): ...
|
||||
|
||||
class IncrementalNewlineDecoder(codecs.IncrementalDecoder):
|
||||
newlines = ... # type: Any
|
||||
def __init__(self, *args, **kwargs) -> None: ...
|
||||
def decode(self, input, final=...): ...
|
||||
def getstate(self): ...
|
||||
def reset(self): ...
|
||||
def setstate(self, state): ...
|
||||
|
||||
class IOBase(_io._IOBase): ...
|
||||
class RawIOBase(_io._RawIOBase, IOBase): ...
|
||||
class BufferedIOBase(_io._BufferedIOBase, IOBase): ...
|
||||
class TextIOBase(_io._TextIOBase, IOBase): ...
|
||||
|
||||
class FileIO(_io._RawIOBase):
|
||||
closefd = ... # type: Any
|
||||
mode = ... # type: Any
|
||||
def __init__(self, name, mode=..., closefd=..., opener=...) -> None: ...
|
||||
def readinto(self, b): ...
|
||||
def write(self, b): ...
|
||||
|
||||
class BufferedReader(_io._BufferedIOBase):
|
||||
mode = ... # type: Any
|
||||
name = ... # type: Any
|
||||
raw = ... # type: Any
|
||||
def __init__(self, raw, buffer_size=...) -> None: ...
|
||||
def peek(self, size: int = ...): ...
|
||||
|
||||
class BufferedWriter(_io._BufferedIOBase):
|
||||
mode = ... # type: Any
|
||||
name = ... # type: Any
|
||||
raw = ... # type: Any
|
||||
def __init__(self, raw, buffer_size=...) -> None: ...
|
||||
|
||||
class BufferedRWPair(_io._BufferedIOBase):
|
||||
def __init__(self, reader, writer, buffer_size=...) -> None: ...
|
||||
def peek(self, size: int = ...): ...
|
||||
|
||||
class BufferedRandom(_io._BufferedIOBase):
|
||||
mode = ... # type: Any
|
||||
name = ... # type: Any
|
||||
raw = ... # type: Any
|
||||
def __init__(self, raw, buffer_size=...) -> None: ...
|
||||
def peek(self, size: int = ...): ...
|
||||
|
||||
class BytesIO(BinaryIO):
|
||||
def __init__(self, initial_bytes: bytes = ...) -> None: ...
|
||||
# TODO getbuffer
|
||||
# TODO see comments in BinaryIO for missing functionality
|
||||
class IOBase:
|
||||
def __iter__(self) -> Iterator[bytes]: ...
|
||||
def __next__(self) -> bytes: ...
|
||||
def __enter__(self) -> 'IOBase': ...
|
||||
def __exit__(self, exc_type: Optional[type], exc_val: Optional[Exception],
|
||||
exc_tb: Optional[TracebackType]) -> bool: ...
|
||||
def close(self) -> None: ...
|
||||
@property
|
||||
def closed(self) -> bool: ...
|
||||
def fileno(self) -> int: ...
|
||||
def flush(self) -> None: ...
|
||||
def isatty(self) -> bool: ...
|
||||
def read(self, n: int = ...) -> bytes: ...
|
||||
def readable(self) -> bool: ...
|
||||
def readline(self, limit: int = ...) -> bytes: ...
|
||||
def readlines(self, hint: int = ...) -> List[bytes]: ...
|
||||
def seek(self, offset: int, whence: int = ...) -> int: ...
|
||||
def seekable(self) -> bool: ...
|
||||
def tell(self) -> int: ...
|
||||
def truncate(self, size: int = ...) -> int: ...
|
||||
def truncate(self, size: Optional[int] = ...) -> int: ...
|
||||
def writable(self) -> bool: ...
|
||||
@overload
|
||||
def write(self, s: bytes) -> int: ...
|
||||
@overload
|
||||
def write(self, s: bytearray) -> int: ...
|
||||
def writelines(self, lines: Iterable[bytes]) -> None: ...
|
||||
def writelines(self, lines: bytes) -> None: ...
|
||||
if sys.version_info >= (3, 4):
|
||||
def readline(self, size: int = ...) -> bytes: ...
|
||||
def __del__(self) -> None: ...
|
||||
else:
|
||||
def readline(self, limit: int = ...) -> bytes: ... # type: ignore
|
||||
if sys.version_info >= (3, 2):
|
||||
closed = ... # type: bool
|
||||
else:
|
||||
def closed(self) -> bool: ... # type: ignore
|
||||
|
||||
class RawIOBase(IOBase):
|
||||
def readall(self) -> bytes: ...
|
||||
def readinto(self, b: bytearray) -> Optional[int]: ...
|
||||
def write(self, b: Union[bytes, bytearray]) -> Optional[int]: ...
|
||||
if sys.version_info >= (3, 4):
|
||||
def read(self, size: int = ...) -> Optional[bytes]: ...
|
||||
else:
|
||||
def read(self, n: int = ...) -> Optional[bytes]: ... # type: ignore
|
||||
|
||||
class BufferedIOBase(IOBase):
|
||||
def detach(self) -> 'RawIOBase': ...
|
||||
def readinto(self, b: bytearray) -> int: ...
|
||||
def write(self, b: Union[bytes, bytearray]) -> int: ...
|
||||
if sys.version_info >= (3, 5):
|
||||
def readinto1(self, b: bytearray) -> int: ...
|
||||
if sys.version_info >= (3, 4):
|
||||
def read(self, size: Optional[int] = ...) -> bytes: ...
|
||||
def read1(self, size: int = ...) -> bytes: ...
|
||||
else:
|
||||
def read(self, n: Optional[int] = ...) -> bytes: ... # type: ignore
|
||||
def read1(self, n: int = ...) -> bytes: ... # type: ignore
|
||||
|
||||
|
||||
class FileIO(RawIOBase):
|
||||
mode = ... # type: str
|
||||
name = ... # type: Union[int, str]
|
||||
if sys.version_info >= (3, 3):
|
||||
def __init__(self, name: Union[str, bytes, int], mode: str = ...,
|
||||
closefd: bool = ...,
|
||||
opener: Optional[
|
||||
Callable[[Union[int, str], str], int]] = ...) \
|
||||
-> None: ...
|
||||
else:
|
||||
def __init__(self, name: Union[str, bytes, int], # type: ignore
|
||||
mode: str = ..., closefd: bool = ...) -> None: ...
|
||||
|
||||
|
||||
class BytesIO(BufferedIOBase):
|
||||
def __init__(self, initial_bytes: bytes = ...) -> None: ...
|
||||
def getvalue(self) -> bytes: ...
|
||||
def read1(self) -> str: ...
|
||||
if sys.version_info >= (3, 2):
|
||||
def getbuffer(self) -> memoryview: ...
|
||||
|
||||
def __iter__(self) -> Iterator[bytes]: ...
|
||||
def __enter__(self) -> 'BytesIO': ...
|
||||
def __exit__(self, t: type = None, value: BaseException = None, traceback: Any = None) -> bool: ...
|
||||
class BufferedReader(BufferedIOBase):
|
||||
def __init__(self, raw: RawIOBase, buffer_size: int = ...) -> None: ...
|
||||
if sys.version_info >= (3, 4):
|
||||
def peek(self, size: int = ...) -> bytes: ...
|
||||
else:
|
||||
def peek(self, n: int = ...) -> bytes: ... # type: ignore
|
||||
|
||||
class StringIO(TextIO):
|
||||
def __init__(self, initial_value: str = ...,
|
||||
newline: str = ...) -> None: ...
|
||||
# TODO see comments in BinaryIO for missing functionality
|
||||
def close(self) -> None: ...
|
||||
@property
|
||||
def closed(self) -> bool: ...
|
||||
def fileno(self) -> int: ...
|
||||
class BufferedWriter(BufferedIOBase):
|
||||
def __init__(self, raw: RawIOBase, buffer_size: int = ...) -> None: ...
|
||||
def flush(self) -> None: ...
|
||||
def isatty(self) -> bool: ...
|
||||
def read(self, n: int = ...) -> str: ...
|
||||
def readable(self) -> bool: ...
|
||||
def readline(self, limit: int = ...) -> str: ...
|
||||
def readlines(self, hint: int = ...) -> List[str]: ...
|
||||
def write(self, b: Union[bytes, bytearray]) -> int: ...
|
||||
|
||||
class BufferedRandom(BufferedReader, BufferedWriter):
|
||||
def __init__(self, raw: RawIOBase, buffer_size: int = ...) -> None: ...
|
||||
def seek(self, offset: int, whence: int = ...) -> int: ...
|
||||
def seekable(self) -> bool: ...
|
||||
def tell(self) -> int: ...
|
||||
def truncate(self, size: int = ...) -> int: ...
|
||||
def writable(self) -> bool: ...
|
||||
|
||||
class BufferedRWPair(BufferedIOBase):
|
||||
def __init__(self, reader: RawIOBase, writer: RawIOBase,
|
||||
buffer_size: int = ...) -> None: ...
|
||||
|
||||
|
||||
class TextIOBase(IOBase):
|
||||
encoding = ... # type: str
|
||||
errors = ... # type: Optional[str]
|
||||
newlines = ... # type: Union[str, Tuple[str, ...], None]
|
||||
def __iter__(self) -> Iterator[str]: ... # type: ignore
|
||||
def __next__(self) -> str: ... # type: ignore
|
||||
def __enter__(self) -> 'TextIOBase': ...
|
||||
def detach(self) -> IOBase: ...
|
||||
def write(self, s: str) -> int: ...
|
||||
def writelines(self, lines: Iterable[str]) -> None: ...
|
||||
if sys.version_info >= (3, 4):
|
||||
def readline(self, size: int = ...) -> str: ... # type: ignore
|
||||
def read(self, size: Optional[int] = ...) -> str: ...
|
||||
elif sys.version_info >= (3, 2):
|
||||
def readline(self, limit: int = ...) -> str: ... # type: ignore
|
||||
else:
|
||||
def readline(self) -> str: ... # type: ignore
|
||||
if sys.version_info >= (3, 2):
|
||||
def seek(self, offset: int, whence: int = ...) -> int: ...
|
||||
def tell(self) -> int: ...
|
||||
|
||||
class TextIOWrapper(TextIOBase):
|
||||
line_buffering = ... # type: bool
|
||||
if sys.version_info >= (3, 3):
|
||||
def __init__(self, buffer: BufferedIOBase, encoding: str = ...,
|
||||
errors: Optional[str] = ..., newline: Optional[str] = ...,
|
||||
line_buffering: bool = ..., write_through: bool = ...) \
|
||||
-> None: ...
|
||||
else:
|
||||
def __init__(self, buffer: BufferedIOBase, # type: ignore
|
||||
encoding: str = ..., errors: Optional[str] = ...,
|
||||
newline: Optional[str] = ..., line_buffering: bool = ...) \
|
||||
-> None: ...
|
||||
|
||||
class StringIO(TextIOWrapper):
|
||||
def __init__(self, initial_value: str = ...,
|
||||
newline: Optional[str] = ...) -> None: ...
|
||||
def getvalue(self) -> str: ...
|
||||
|
||||
def __iter__(self) -> Iterator[str]: ...
|
||||
def __enter__(self) -> 'StringIO': ...
|
||||
def __exit__(self, t: type = None, value: BaseException = None, traceback: Any = None) -> bool: ...
|
||||
|
||||
class TextIOWrapper(TextIO):
|
||||
# TODO: This is actually a base class of _io._TextIOBase.
|
||||
# write_through is undocumented but used by subprocess
|
||||
def __init__(self, buffer: IO[bytes], encoding: str = ...,
|
||||
errors: str = ..., newline: str = ...,
|
||||
line_buffering: bool = ...,
|
||||
write_through: bool = ...) -> None: ...
|
||||
# TODO see comments in BinaryIO for missing functionality
|
||||
def close(self) -> None: ...
|
||||
@property
|
||||
def closed(self) -> bool: ...
|
||||
def fileno(self) -> int: ...
|
||||
def flush(self) -> None: ...
|
||||
def isatty(self) -> bool: ...
|
||||
def read(self, n: int = ...) -> str: ...
|
||||
def readable(self) -> bool: ...
|
||||
def readline(self, limit: int = ...) -> str: ...
|
||||
def readlines(self, hint: int = ...) -> List[str]: ...
|
||||
def seek(self, offset: int, whence: int = ...) -> int: ...
|
||||
def seekable(self) -> bool: ...
|
||||
def tell(self) -> int: ...
|
||||
def truncate(self, size: int = ...) -> int: ...
|
||||
def writable(self) -> bool: ...
|
||||
def write(self, s: str) -> int: ...
|
||||
def writelines(self, lines: Iterable[str]) -> None: ...
|
||||
|
||||
def __iter__(self) -> Iterator[str]: ...
|
||||
def __enter__(self) -> StringIO: ...
|
||||
def __exit__(self, t: type = None, value: BaseException = None, traceback: Any = None) -> bool: ...
|
||||
class IncrementalNewlineDecoder(codecs.IncrementalDecoder): ...
|
||||
|
||||
Reference in New Issue
Block a user