enumFromString<T> function

T enumFromString<T>(
  1. Iterable<T> values,
  2. String value
)

Enum from string

enum MyEnum {A, B, C}
MyEnum e = enumFromString<MyEnum>(MyEnum.values, 'B');
print(e); // is MyEnum.B

Implementation

T enumFromString<T>(Iterable<T> values, String value) {
  return values.firstWhere((type) => type.toString().split('.').last == value,
      orElse: () {
    throw 'Undefined enumeration type!';
  });
}