summaryrefslogtreecommitdiffstats
path: root/Lib/enum.py
diff options
context:
space:
mode:
authorEthan Furman <ethan@stoneleaf.us>2020-12-10 20:20:06 (GMT)
committerGitHub <noreply@github.com>2020-12-10 20:20:06 (GMT)
commitefb13be72cbf49edf591936fafb120fe1b7d59f7 (patch)
treeb35ffdea85d002cac1789a48c99287e5ca75a358 /Lib/enum.py
parent9fc571359af9320fddbe4aa2710a767f168c1707 (diff)
downloadcpython-efb13be72cbf49edf591936fafb120fe1b7d59f7.zip
cpython-efb13be72cbf49edf591936fafb120fe1b7d59f7.tar.gz
cpython-efb13be72cbf49edf591936fafb120fe1b7d59f7.tar.bz2
bpo-42385: [Enum] add `_generate_next_value_` to StrEnum (GH-23735)
The default for auto() is to return an integer, which doesn't work for `StrEnum`. The new `_generate_next_value_` for `StrEnum` returns the member name, lower cased.
Diffstat (limited to 'Lib/enum.py')
-rw-r--r--Lib/enum.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/Lib/enum.py b/Lib/enum.py
index 74318c3..ed0c9ce 100644
--- a/Lib/enum.py
+++ b/Lib/enum.py
@@ -826,6 +826,12 @@ class StrEnum(str, Enum):
__str__ = str.__str__
+ def _generate_next_value_(name, start, count, last_values):
+ """
+ Return the lower-cased version of the member name.
+ """
+ return name.lower()
+
def _reduce_ex_by_name(self, proto):
return self.name