mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-05-04 12:35:49 +08:00
Add @disjoint_base decorator in the stdlib (#14599)
And fix some other new stubtest finds.
This commit is contained in:
+60
-28
@@ -1,10 +1,11 @@
|
||||
import sys
|
||||
import types
|
||||
from _codecs import *
|
||||
from _typeshed import ReadableBuffer
|
||||
from abc import abstractmethod
|
||||
from collections.abc import Callable, Generator, Iterable
|
||||
from typing import Any, BinaryIO, ClassVar, Final, Literal, Protocol, TextIO, overload, type_check_only
|
||||
from typing_extensions import Self, TypeAlias
|
||||
from typing_extensions import Self, TypeAlias, disjoint_base
|
||||
|
||||
__all__ = [
|
||||
"register",
|
||||
@@ -122,33 +123,64 @@ class _IncrementalDecoder(Protocol):
|
||||
class _BufferedIncrementalDecoder(Protocol):
|
||||
def __call__(self, errors: str = ...) -> BufferedIncrementalDecoder: ...
|
||||
|
||||
class CodecInfo(tuple[_Encoder, _Decoder, _StreamReader, _StreamWriter]):
|
||||
_is_text_encoding: bool
|
||||
@property
|
||||
def encode(self) -> _Encoder: ...
|
||||
@property
|
||||
def decode(self) -> _Decoder: ...
|
||||
@property
|
||||
def streamreader(self) -> _StreamReader: ...
|
||||
@property
|
||||
def streamwriter(self) -> _StreamWriter: ...
|
||||
@property
|
||||
def incrementalencoder(self) -> _IncrementalEncoder: ...
|
||||
@property
|
||||
def incrementaldecoder(self) -> _IncrementalDecoder: ...
|
||||
name: str
|
||||
def __new__(
|
||||
cls,
|
||||
encode: _Encoder,
|
||||
decode: _Decoder,
|
||||
streamreader: _StreamReader | None = None,
|
||||
streamwriter: _StreamWriter | None = None,
|
||||
incrementalencoder: _IncrementalEncoder | None = None,
|
||||
incrementaldecoder: _IncrementalDecoder | None = None,
|
||||
name: str | None = None,
|
||||
*,
|
||||
_is_text_encoding: bool | None = None,
|
||||
) -> Self: ...
|
||||
if sys.version_info >= (3, 12):
|
||||
class CodecInfo(tuple[_Encoder, _Decoder, _StreamReader, _StreamWriter]):
|
||||
_is_text_encoding: bool
|
||||
@property
|
||||
def encode(self) -> _Encoder: ...
|
||||
@property
|
||||
def decode(self) -> _Decoder: ...
|
||||
@property
|
||||
def streamreader(self) -> _StreamReader: ...
|
||||
@property
|
||||
def streamwriter(self) -> _StreamWriter: ...
|
||||
@property
|
||||
def incrementalencoder(self) -> _IncrementalEncoder: ...
|
||||
@property
|
||||
def incrementaldecoder(self) -> _IncrementalDecoder: ...
|
||||
name: str
|
||||
def __new__(
|
||||
cls,
|
||||
encode: _Encoder,
|
||||
decode: _Decoder,
|
||||
streamreader: _StreamReader | None = None,
|
||||
streamwriter: _StreamWriter | None = None,
|
||||
incrementalencoder: _IncrementalEncoder | None = None,
|
||||
incrementaldecoder: _IncrementalDecoder | None = None,
|
||||
name: str | None = None,
|
||||
*,
|
||||
_is_text_encoding: bool | None = None,
|
||||
) -> Self: ...
|
||||
|
||||
else:
|
||||
@disjoint_base
|
||||
class CodecInfo(tuple[_Encoder, _Decoder, _StreamReader, _StreamWriter]):
|
||||
_is_text_encoding: bool
|
||||
@property
|
||||
def encode(self) -> _Encoder: ...
|
||||
@property
|
||||
def decode(self) -> _Decoder: ...
|
||||
@property
|
||||
def streamreader(self) -> _StreamReader: ...
|
||||
@property
|
||||
def streamwriter(self) -> _StreamWriter: ...
|
||||
@property
|
||||
def incrementalencoder(self) -> _IncrementalEncoder: ...
|
||||
@property
|
||||
def incrementaldecoder(self) -> _IncrementalDecoder: ...
|
||||
name: str
|
||||
def __new__(
|
||||
cls,
|
||||
encode: _Encoder,
|
||||
decode: _Decoder,
|
||||
streamreader: _StreamReader | None = None,
|
||||
streamwriter: _StreamWriter | None = None,
|
||||
incrementalencoder: _IncrementalEncoder | None = None,
|
||||
incrementaldecoder: _IncrementalDecoder | None = None,
|
||||
name: str | None = None,
|
||||
*,
|
||||
_is_text_encoding: bool | None = None,
|
||||
) -> Self: ...
|
||||
|
||||
def getencoder(encoding: str) -> _Encoder: ...
|
||||
def getdecoder(encoding: str) -> _Decoder: ...
|
||||
|
||||
Reference in New Issue
Block a user