enum: Add member and nonmember (#7795)

python/cpython#92366
This commit is contained in:
Jelle Zijlstra
2022-05-06 23:48:34 -07:00
committed by GitHub
parent 58f2e317c1
commit 031c998055

View File

@@ -4,7 +4,7 @@ from _typeshed import Self
from abc import ABCMeta
from builtins import property as _builtins_property
from collections.abc import Iterable, Iterator, Mapping
from typing import Any, TypeVar, overload
from typing import Any, Generic, TypeVar, overload
from typing_extensions import Literal, TypeAlias
if sys.version_info >= (3, 11):
@@ -21,6 +21,8 @@ if sys.version_info >= (3, 11):
"unique",
"property",
"verify",
"member",
"nonmember",
"FlagBoundary",
"STRICT",
"CONFORM",
@@ -54,6 +56,15 @@ _EnumerationT = TypeVar("_EnumerationT", bound=type[Enum])
# <enum 'Foo'>
_EnumNames: TypeAlias = str | Iterable[str] | Iterable[Iterable[str | Any]] | Mapping[str, Any]
if sys.version_info >= (3, 11):
class nonmember(Generic[_EnumMemberT]):
value: _EnumMemberT
def __init__(self, value: _EnumMemberT) -> None: ...
class member(Generic[_EnumMemberT]):
value: _EnumMemberT
def __init__(self, value: _EnumMemberT) -> None: ...
class _EnumDict(dict[str, Any]):
def __init__(self) -> None: ...
def __setitem__(self, key: str, value: Any) -> None: ...