Use TypeAlias where possible for type aliases (#7630)

This commit is contained in:
Alex Waygood
2022-04-16 02:01:00 +01:00
committed by GitHub
parent c0e6dd3f3f
commit 740193a8fc
218 changed files with 760 additions and 625 deletions

View File

@@ -1,11 +1,12 @@
from email.message import Message
from email.policy import Policy
from typing import IO, Callable, TypeVar, Union
from typing_extensions import TypeAlias
# Definitions imported by multiple submodules in typeshed
_MessageT = TypeVar("_MessageT", bound=Message) # noqa: Y018
_ParamType = Union[str, tuple[str | None, str | None, str]]
_ParamsType = Union[str, None, tuple[str, str | None, str]]
_ParamType: TypeAlias = Union[str, tuple[str | None, str | None, str]]
_ParamsType: TypeAlias = Union[str, None, tuple[str, str | None, str]]
def message_from_string(s: str, _class: Callable[[], Message] = ..., *, policy: Policy = ...) -> Message: ...
def message_from_bytes(s: bytes, _class: Callable[[], Message] = ..., *, policy: Policy = ...) -> Message: ...

View File

@@ -4,13 +4,14 @@ from email.contentmanager import ContentManager
from email.errors import MessageDefect
from email.policy import Policy
from typing import Any, Generator, Iterator, Sequence, TypeVar
from typing_extensions import TypeAlias
__all__ = ["Message", "EmailMessage"]
_T = TypeVar("_T")
_PayloadType = list[Message] | str | bytes
_CharsetType = Charset | str | None
_PayloadType: TypeAlias = list[Message] | str | bytes
_CharsetType: TypeAlias = Charset | str | None
_HeaderType = Any
class Message:

View File

@@ -3,11 +3,12 @@ from email import _MessageT
from email.message import Message
from email.policy import Policy
from typing import BinaryIO, Callable, TextIO
from typing_extensions import TypeAlias
__all__ = ["Parser", "HeaderParser", "BytesParser", "BytesHeaderParser", "FeedParser", "BytesFeedParser"]
FeedParser = email.feedparser.FeedParser[_MessageT]
BytesFeedParser = email.feedparser.BytesFeedParser[_MessageT]
FeedParser: TypeAlias = email.feedparser.FeedParser[_MessageT]
BytesFeedParser: TypeAlias = email.feedparser.BytesFeedParser[_MessageT]
class Parser:
def __init__(self, _class: Callable[[], Message] | None = ..., *, policy: Policy = ...) -> None: ...

View File

@@ -3,6 +3,7 @@ import sys
from email import _ParamType
from email.charset import Charset
from typing import overload
from typing_extensions import TypeAlias
__all__ = [
"collapse_rfc2231_value",
@@ -22,7 +23,7 @@ __all__ = [
"unquote",
]
_PDTZ = tuple[int, int, int, int, int, int, int, int, int, int | None]
_PDTZ: TypeAlias = tuple[int, int, int, int, int, int, int, int, int, int | None]
def quote(str: str) -> str: ...
def unquote(str: str) -> str: ...