Skip to content

Commit 85594df

Browse files
authored
Use re-exports instead of TypeAliases in email.parser (#7665)
1 parent 4a70164 commit 85594df

File tree

3 files changed

+5
-10
lines changed

3 files changed

+5
-10
lines changed

stdlib/email/__init__.pyi

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
from collections.abc import Callable
22
from email.message import Message
33
from email.policy import Policy
4-
from typing import IO, TypeVar, Union
4+
from typing import IO, Union
55
from typing_extensions import TypeAlias
66

77
# Definitions imported by multiple submodules in typeshed
8-
_MessageT = TypeVar("_MessageT", bound=Message) # noqa: Y018
98
_ParamType: TypeAlias = Union[str, tuple[str | None, str | None, str]]
109
_ParamsType: TypeAlias = Union[str, None, tuple[str, str | None, str]]
1110

stdlib/email/feedparser.pyi

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
from collections.abc import Callable
2-
from email import _MessageT
32
from email.message import Message
43
from email.policy import Policy
5-
from typing import Generic, overload
4+
from typing import Generic, TypeVar, overload
65

76
__all__ = ["FeedParser", "BytesFeedParser"]
87

8+
_MessageT = TypeVar("_MessageT", bound=Message)
9+
910
class FeedParser(Generic[_MessageT]):
1011
@overload
1112
def __init__(self: FeedParser[Message], _factory: None = ..., *, policy: Policy = ...) -> None: ...

stdlib/email/parser.pyi

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,11 @@
1-
import email.feedparser
21
from collections.abc import Callable
3-
from email import _MessageT
2+
from email.feedparser import BytesFeedParser as BytesFeedParser, FeedParser as FeedParser
43
from email.message import Message
54
from email.policy import Policy
65
from typing import BinaryIO, TextIO
7-
from typing_extensions import TypeAlias
86

97
__all__ = ["Parser", "HeaderParser", "BytesParser", "BytesHeaderParser", "FeedParser", "BytesFeedParser"]
108

11-
FeedParser: TypeAlias = email.feedparser.FeedParser[_MessageT]
12-
BytesFeedParser: TypeAlias = email.feedparser.BytesFeedParser[_MessageT]
13-
149
class Parser:
1510
def __init__(self, _class: Callable[[], Message] | None = ..., *, policy: Policy = ...) -> None: ...
1611
def parse(self, fp: TextIO, headersonly: bool = ...) -> Message: ...

0 commit comments

Comments
 (0)