enum_class 0.1.0 enum_class: ^0.1.0 copied to clipboard
Dart classes as enums. This library is the runtime dependency.
Enum Classes for Dart #
Enum Classes are an extension to Dart that uses code generation to give common enum functionality to classes.
Features #
- Constants have
name
andtoString
, can be used inswitch
statements, and are real classes that you can add code to - Generated
values
method that returns all the enum values in aBuiltSet
(immutable set) - Generated
valueOf
method that takes aString
Using Enum Classes #
Enum Classes use the source_gen
library for code generation. The typical way to use it is via a build.dart
tool that you create for your project. When you run it, all the generated files
are updated.
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.dart
for your project. See example, below. - Run
pub run tools/build.dart
whenever you need to update the generated files. - To make an Enum Class, import
package:enum_class/enum_class.dart
then extend EnumClass.
See
this example
for a full project with a build.dart
and an enum.
Features and bugs #
Please file feature requests and bugs at the issue tracker.