Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Enumeratum Alternatives
Similar projects and alternatives to Enumeratum
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Each
A macro library that converts native imperative syntax to scalaz's monadic expressions (by ThoughtWorksInc)
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
scribe
The fastest logging library in the world. Built from scratch in Scala and programmatically configurable. (by outr)
Enumeratum reviews and mentions
-
How to implement `if-else if -else if -else` with cat effect IO in Scala?
I'm not sure I understand what Cats or cats-effect has to do with what you're trying to do. As far as I can tell, it sounds like what you're asking is simply "what's the best way to implement an enumerated type in Scala?" The best answer to that I'm aware of is Enumeratum.
-
Concise enumeration in Scala
In Scala 2: enumeratum which is, essentially, option 3 from your post.
-
Simple, Naïve, and Wrong: More than you wanted to know about Scala Case Classes
And for exactly the same reasons one shouldn't override equals and hashCode in a case class, they shouldn't manually implement an enumeration and instead let a well-tested macro (2.x) or the compiler itself (3.x) handle reliably doing the automated code generation. The more code that is generated by the compiler, the smaller the defects, technical debt, and security vulnerability surface areas.
-
A survey of programming language enum support
For Scala, check out the enumeratum library (https://github.com/lloydmeta/enumeratum). In my opinion its the best enum implementation I know of. It has all the features defined in the table, and the syntax is really clean. It even supports unique associated values (eg. unique String/Int keys).
-
A note from our sponsor - InfluxDB
www.influxdata.com | 23 Apr 2024
Stats
lloydmeta/enumeratum is an open source project licensed under MIT License which is an OSI approved license.
The primary programming language of Enumeratum is Scala.
Sponsored