email.generator: Use protocols instead of TextIO/BinaryIO (#7082)

This commit is contained in:
Jelle Zijlstra
2022-01-30 05:02:11 -08:00
committed by GitHub
parent 45a2dad83c
commit 3b29006a3e

View File

@@ -1,27 +1,37 @@
from _typeshed import SupportsWrite
from email.message import Message
from email.policy import Policy
from typing import BinaryIO, TextIO
class Generator:
def clone(self, fp: TextIO) -> Generator: ...
def clone(self, fp: SupportsWrite[str]) -> Generator: ...
def write(self, s: str) -> None: ...
def __init__(
self, outfp: TextIO, mangle_from_: bool | None = ..., maxheaderlen: int | None = ..., *, policy: Policy | None = ...
self,
outfp: SupportsWrite[str],
mangle_from_: bool | None = ...,
maxheaderlen: int | None = ...,
*,
policy: Policy | None = ...,
) -> None: ...
def flatten(self, msg: Message, unixfrom: bool = ..., linesep: str | None = ...) -> None: ...
class BytesGenerator:
def clone(self, fp: BinaryIO) -> BytesGenerator: ...
def clone(self, fp: SupportsWrite[bytes]) -> BytesGenerator: ...
def write(self, s: str) -> None: ...
def __init__(
self, outfp: BinaryIO, mangle_from_: bool | None = ..., maxheaderlen: int | None = ..., *, policy: Policy | None = ...
self,
outfp: SupportsWrite[bytes],
mangle_from_: bool | None = ...,
maxheaderlen: int | None = ...,
*,
policy: Policy | None = ...,
) -> None: ...
def flatten(self, msg: Message, unixfrom: bool = ..., linesep: str | None = ...) -> None: ...
class DecodedGenerator(Generator):
def __init__(
self,
outfp: TextIO,
outfp: SupportsWrite[str],
mangle_from_: bool | None = ...,
maxheaderlen: int | None = ...,
fmt: str | None = ...,