Project's Logo

stevedunn/intellenum

0/100

Intellenum is an open source C# project that provides a fast and efficient way to deal with enums through source generation. It uses attributes to specify the enum and then generates backing code for extremely fast, allocation-free lookups using methods like FromName and FromValue. Intellenum also supports various underlying types, including custom types, and provides safety features through code analyzers. It can be installed via NuGet and offers methods for configuration, deconstruction, and serialization. Intellenum’s performance is significantly faster than standard enums and other libraries, as shown in the provided benchmarks. It is constantly monitored for performance and can be used as a key in a Dictionary for serialization with System.Text.Json. The generated code includes switch expressions for compile-time constant values and switch statements for FromValue methods. Intellenum is in beta and has borrowed features from the established Vogen library.

Project Information

Contribution Opportunities

  • Issues are available for contributions.
  • Project boards are active.
  • Wiki is available for documentation and guides.

License

Apache License 2.0

Recent Contributors

SteveDunn's avatar

SteveDunn

158 Contributions

dependabot[bot]'s avatar

dependabot[bot]

19 Contributions

jupjohn's avatar

jupjohn

10 Contributions

NoahStolk's avatar

NoahStolk

6 Contributions