Here’s a nice simple article explaining enhanced enums that have been around for a while but may be something overlooked. Between these and sealed classes I think Dart has an excellent story for pattern matching.
I’ve yet to find a single use case for enhanced enums. It also doesn’t help that freezed doesn’t support them.
How exactly does freezed not support them? All data on an enhanced enum is static.
Freezed generates sealed classes, not enums.
I’m not sure enhanced enums do what you think they do if you expect freezed to generate anything for them besides what json_serializable generates for regular enums
The whole point of the discussion is that enhanced enums don’t do anything in practice.
Instead of writing verbose extensions and functions all over the place you can use enhanced enums. I mean what else are they supposed to do?
Maybe the code generator? I have no idea. It seems like there shouldn’t be an issue.
Prior to sealed classes, I wished they were more like swift enums that could carry dynamic data and have different associated types per case. Now if I want that, I can do that with a sealed class. It’s still nice to have smarter enums if I need a little extra smarts and want to keep the logic close to the enum.