mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-08 04:54:47 +08:00
Add enum module features new in 3.11 (#7358)
This commit is contained in:
@@ -163,16 +163,22 @@ class Enum(metaclass=EnumMeta):
|
||||
def __hash__(self) -> Any: ...
|
||||
def __reduce_ex__(self, proto: object) -> Any: ...
|
||||
|
||||
class IntEnum(int, Enum):
|
||||
_value_: int
|
||||
if sys.version_info >= (3, 11):
|
||||
if sys.version_info >= (3, 11):
|
||||
class ReprEnum(Enum): ...
|
||||
|
||||
if sys.version_info >= (3, 11):
|
||||
class IntEnum(int, ReprEnum):
|
||||
_value_: int
|
||||
@property
|
||||
def value(self) -> int: ...
|
||||
else:
|
||||
def __new__(cls: type[Self], value: int | Self) -> Self: ...
|
||||
|
||||
else:
|
||||
class IntEnum(int, Enum):
|
||||
_value_: int
|
||||
@types.DynamicClassAttribute
|
||||
def value(self) -> int: ...
|
||||
|
||||
def __new__(cls: type[Self], value: int | Self) -> Self: ...
|
||||
def __new__(cls: type[Self], value: int | Self) -> Self: ...
|
||||
|
||||
def unique(enumeration: _S) -> _S: ...
|
||||
|
||||
@@ -221,12 +227,24 @@ class IntFlag(int, Flag):
|
||||
def __rxor__(self: Self, n: int | Self) -> Self: ...
|
||||
|
||||
if sys.version_info >= (3, 11):
|
||||
class StrEnum(str, Enum):
|
||||
class StrEnum(str, ReprEnum):
|
||||
def __new__(cls: type[Self], value: str | Self) -> Self: ...
|
||||
_value_: str
|
||||
@property
|
||||
def value(self) -> str: ...
|
||||
|
||||
class EnumCheck(StrEnum):
|
||||
CONTINUOUS: str
|
||||
NAMED_FLAGS: str
|
||||
UNIQUE: str
|
||||
CONTINUOUS = EnumCheck.CONTINUOUS
|
||||
NAMED_FLAGS = EnumCheck.NAMED_FLAGS
|
||||
UNIQUE = EnumCheck.UNIQUE
|
||||
|
||||
class verify:
|
||||
def __init__(self, *checks: EnumCheck) -> None: ...
|
||||
def __call__(self, enumeration: _S) -> _S: ...
|
||||
|
||||
class FlagBoundary(StrEnum):
|
||||
STRICT: str
|
||||
CONFORM: str
|
||||
@@ -241,6 +259,7 @@ if sys.version_info >= (3, 11):
|
||||
def __set_name__(self, ownerclass: type[Enum], name: str) -> None: ...
|
||||
name: str
|
||||
clsname: str
|
||||
def global_enum(cls: _S) -> _S: ...
|
||||
def global_str(self: Enum) -> str: ...
|
||||
def global_enum(cls: _S, update_str: bool = ...) -> _S: ...
|
||||
def global_enum_repr(self: Enum) -> str: ...
|
||||
def global_flag_repr(self: Flag) -> str: ...
|
||||
|
||||
Reference in New Issue
Block a user