From 75a92eb1c19648d55f20cc1ef27539ad3470afd1 Mon Sep 17 00:00:00 2001 From: Utsav <39943143+utsav00@users.noreply.github.com> Date: Wed, 28 Oct 2020 00:19:23 +0530 Subject: [PATCH] Added: None Overload (#4722) --- stdlib/3/email/utils.pyi | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/stdlib/3/email/utils.pyi b/stdlib/3/email/utils.pyi index faf3a11d5..7c4c409be 100644 --- a/stdlib/3/email/utils.pyi +++ b/stdlib/3/email/utils.pyi @@ -1,6 +1,7 @@ import datetime +import sys from email.charset import Charset -from typing import List, Optional, Tuple, Union +from typing import List, Optional, Tuple, Union, overload _ParamType = Union[str, Tuple[Optional[str], Optional[str], str]] _PDTZ = Tuple[int, int, int, int, int, int, int, int, int, Optional[int]] @@ -10,9 +11,24 @@ def unquote(str: str) -> str: ... def parseaddr(address: Optional[str]) -> Tuple[str, str]: ... def formataddr(pair: Tuple[Optional[str], str], charset: Union[str, Charset] = ...) -> str: ... def getaddresses(fieldvalues: List[str]) -> List[Tuple[str, str]]: ... +@overload +def parsedate(date: None) -> None: ... +@overload def parsedate(date: str) -> Optional[Tuple[int, int, int, int, int, int, int, int, int]]: ... +@overload +def parsedate_tz(date: None) -> None: ... +@overload def parsedate_tz(date: str) -> Optional[_PDTZ]: ... -def parsedate_to_datetime(date: str) -> datetime.datetime: ... + +if sys.version_info >= (3, 10): + @overload + def parsedate_to_datetime(date: None) -> None: ... + @overload + def parsedate_to_datetime(date: str) -> datetime.datetime: ... + +else: + def parsedate_to_datetime(date: str) -> datetime.datetime: ... + def mktime_tz(tuple: _PDTZ) -> int: ... def formatdate(timeval: Optional[float] = ..., localtime: bool = ..., usegmt: bool = ...) -> str: ... def format_datetime(dt: datetime.datetime, usegmt: bool = ...) -> str: ...