Skip to content

Commit 031c998

Browse files
enum: Add member and nonmember (#7795)
python/cpython#92366
1 parent 58f2e31 commit 031c998

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

stdlib/enum.pyi

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ from _typeshed import Self
44
from abc import ABCMeta
55
from builtins import property as _builtins_property
66
from collections.abc import Iterable, Iterator, Mapping
7-
from typing import Any, TypeVar, overload
7+
from typing import Any, Generic, TypeVar, overload
88
from typing_extensions import Literal, TypeAlias
99

1010
if sys.version_info >= (3, 11):
@@ -21,6 +21,8 @@ if sys.version_info >= (3, 11):
2121
"unique",
2222
"property",
2323
"verify",
24+
"member",
25+
"nonmember",
2426
"FlagBoundary",
2527
"STRICT",
2628
"CONFORM",
@@ -54,6 +56,15 @@ _EnumerationT = TypeVar("_EnumerationT", bound=type[Enum])
5456
# <enum 'Foo'>
5557
_EnumNames: TypeAlias = str | Iterable[str] | Iterable[Iterable[str | Any]] | Mapping[str, Any]
5658

59+
if sys.version_info >= (3, 11):
60+
class nonmember(Generic[_EnumMemberT]):
61+
value: _EnumMemberT
62+
def __init__(self, value: _EnumMemberT) -> None: ...
63+
64+
class member(Generic[_EnumMemberT]):
65+
value: _EnumMemberT
66+
def __init__(self, value: _EnumMemberT) -> None: ...
67+
5768
class _EnumDict(dict[str, Any]):
5869
def __init__(self) -> None: ...
5970
def __setitem__(self, key: str, value: Any) -> None: ...

0 commit comments

Comments
 (0)