Make FeedParser generic over Message (#4375)

This commit is contained in:
Sebastian Rittau
2020-08-04 18:32:38 +02:00
committed by GitHub
parent a770110497
commit dc0bfc5889

View File

@@ -1,15 +1,21 @@
# Stubs for email.feedparser (Python 3.4)
from email.message import Message
from email.policy import Policy
from typing import Callable
from typing import Callable, Generic, TypeVar, overload
class FeedParser:
def __init__(self, _factory: Callable[[], Message] = ..., *, policy: Policy = ...) -> None: ...
_M = TypeVar("_M", bound=Message)
class FeedParser(Generic[_M]):
@overload
def __init__(self: FeedParser[Message], _factory: None = ..., *, policy: Policy = ...) -> None: ...
@overload
def __init__(self, _factory: Callable[[], _M], *, policy: Policy = ...) -> None: ...
def feed(self, data: str) -> None: ...
def close(self) -> Message: ...
def close(self) -> _M: ...
class BytesFeedParser:
def __init__(self, _factory: Callable[[], Message] = ..., *, policy: Policy = ...) -> None: ...
class BytesFeedParser(Generic[_M]):
@overload
def __init__(self: BytesFeedParser[Message], _factory: None = ..., *, policy: Policy = ...) -> None: ...
@overload
def __init__(self, _factory: Callable[[], _M], *, policy: Policy = ...) -> None: ...
def feed(self, data: bytes) -> None: ...
def close(self) -> Message: ...
def close(self) -> _M: ...