Enum Classes for Dart
Enum Classes provide classes with enum features and are part of Libraries for Object Oriented Dart.
Enums are very helpful in modelling the real world: whenever there are a small fixed set of options, an enum is a natural choice. For an object oriented design, though, enums need to be classes. Dart falls short here, so Enum Classes provide what's missing!
toString, can be used in
switchstatements, and are real classes that can hold code and implement interfaces
valuesmethod that returns all the enum values in a
valueOfmethod that takes a
Using Enum Classes
Enum Classes use the source_gen
library for code generation. The typical way to use it is via a
tool that you create for your project. When you run it, all the generated files
Here's what you need to do to use Enum Classes:
- Add a library dependency on enum_class to your pubspec.yaml
- Add a dev dependency on enum_class_generator to your pubspec.yaml
- Create a
build.dartfor your project. See example, below.
pub run tools/build.dartwhenever you need to update the generated files.
To make an Enum Class, import
package:enum_class/enum_class.dartthen extend EnumClass.
for a full project with a
build.dart and an enum.
Features and bugs
Please file feature requests and bugs at the issue tracker.