[3.12] gh-114149: [Enum] fix tuple subclass handling when using custom __new__ (GH-114160) (GH-114196)

(cherry picked from commit 33b47a2c28)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
This commit is contained in:
Miss Islington (bot) 2024-01-17 22:34:48 +01:00 committed by GitHub
parent 24d23929d6
commit c1890e666e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 20 additions and 3 deletions

View file

@ -254,7 +254,7 @@ class _proto_member:
delattr(enum_class, member_name)
# second step: create member based on enum_class
value = self.value
if not isinstance(value, tuple):
if type(value) is not tuple:
args = (value, )
else:
args = value
@ -1757,7 +1757,7 @@ def _simple_enum(etype=Enum, *, boundary=None, use_args=None):
else:
# create the member
if use_args:
if not isinstance(value, tuple):
if type(value) is not tuple:
value = (value, )
member = new_member(enum_class, *value)
value = value[0]
@ -1807,7 +1807,7 @@ def _simple_enum(etype=Enum, *, boundary=None, use_args=None):
else:
# create the member
if use_args:
if not isinstance(value, tuple):
if type(value) is not tuple:
value = (value, )
member = new_member(enum_class, *value)
value = value[0]