2022/05/13追記
Dart 2.1.17から標準で以下の書き方ができるようになりました。 (@Cat_sushi ありがとうございます)
enum Water {
frozen(32),
lukewarm(100),
boiling(212),
}
参考
https://medium.com/dartlang/dart-2-17-b216bfc80c5d#72da
旧記事
TypeScriptとかだと、↓こんな感じにできて便利なんですが、DartだとExtensionを作る必要があるようです。
数値の方がDBに格納されている場合に、enumの並び順を変更して値が変わると困るので。
enum MyColor {
red = 1,
green = 100,
}
enum MyColor {
red,
green
}
extension MyColorExtension on MyColor {
int get id {
switch (this) {
case MyColor.red:
return 1;
case MyColor.green:
return 100;
}
}
}