2

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.

top 8 comments
sorted by: hot top controversial new old
[-] anlumo@feddit.de 1 points 10 months ago

I've yet to find a single use case for enhanced enums. It also doesn’t help that freezed doesn’t support them.

[-] Rexios@lemm.ee 1 points 10 months ago

How exactly does freezed not support them? All data on an enhanced enum is static.

[-] anlumo@feddit.de 1 points 10 months ago

Freezed generates sealed classes, not enums.

[-] Rexios@lemm.ee 1 points 10 months ago

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

[-] anlumo@feddit.de 1 points 10 months ago

The whole point of the discussion is that enhanced enums don't do anything in practice.

[-] problematicconsumer@lemmy.world 1 points 10 months ago

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?

[-] samus7070@programming.dev 1 points 10 months ago

Maybe the code generator? I have no idea. It seems like there shouldn’t be an issue.

[-] samus7070@programming.dev 1 points 10 months ago

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.

this post was submitted on 04 Oct 2023
2 points (75.0% liked)

Flutter

527 readers
3 users here now

Flutter and the related logo are trademarks of Google LLC. We are not endorsed by or affiliated with Google LLC

founded 1 year ago
MODERATORS