File tree Expand file tree Collapse file tree 2 files changed +23
-2
lines changed Expand file tree Collapse file tree 2 files changed +23
-2
lines changed Original file line number Diff line number Diff line change @@ -3313,8 +3313,8 @@ def enum_members(self) -> list[str]:
3313
3313
continue # unannotated value not a member
3314
3314
3315
3315
typ = mypy .types .get_proper_type (sym .node .type )
3316
- if isinstance (
3317
- typ , mypy .types .FunctionLike
3316
+ if (
3317
+ isinstance ( typ , mypy .types .FunctionLike ) and not typ . is_type_obj ()
3318
3318
) or ( # explicit `@member` is required
3319
3319
isinstance (typ , mypy .types .Instance )
3320
3320
and typ .type .fullname == "enum.nonmember"
Original file line number Diff line number Diff line change @@ -2638,3 +2638,24 @@ def f2() -> None:
2638
2638
return
2639
2639
reveal_type(y) # N: Revealed type is "builtins.str"
2640
2640
[builtins fixtures/list.pyi]
2641
+
2642
+ [case testEnumTypeObjectMember]
2643
+ import enum
2644
+ from typing import NoReturn
2645
+
2646
+ def assert_never(x: NoReturn) -> None: ...
2647
+
2648
+ class ValueType(enum.Enum):
2649
+ INT = int
2650
+ STR = str
2651
+
2652
+ value_type: ValueType = ValueType.INT
2653
+
2654
+ match value_type:
2655
+ case ValueType.INT:
2656
+ pass
2657
+ case ValueType.STR:
2658
+ pass
2659
+ case _:
2660
+ assert_never(value_type)
2661
+ [builtins fixtures/tuple.pyi]
You can’t perform that action at this time.
0 commit comments