On 22/05/2024 00:31, Larry Garfield wrote:
I could see an argument for auto-populating the backing value off the
enum name if it's not specified, something like this:
enum Options: string {
case First; // This implicitly gets "First"
case Second = '2nd';
}
This seems like a reasonable compromise. In this case, all I need to do
is change my enum to a backed enum (suffix `: string`) and I get the
benefits of implicit values. I still like the idea of the same being
possible for non-backed enums, though I imagine that is a product of my
naïveté, as I do not tend to think of things in the framing of
(de)serialization.
I'm not sure if I'd support it myself at the moment
Noted, but I once again find myself needing to ask: why not? Were it up
to me, I'd say let's start right now! :)
Aside, I am not at all concerned with integer-backed enums at this
juncture, and presume that could be a separate discussion/implementation
anyway.
Cheers,
Bilge