Enum constructor

Enum(
  1. String filename,
  2. String name,
  3. List<String> manifest
)

Implementation

Enum(String filename, String name, this.manifest) : super(filename, name) {
    for (String value in manifest) {
        value = validName(value);
        if (value.isEmpty) throw Exception('Enum "$name" contains invalid value.');
        if (values.contains(value)) throw Exception('Enum "$name" value "$value" is duplicated.');
        if (reserved.contains(value)) throw Exception('Enum "$name" value "$value" is reserved by Dart.');
        values.add(value);
    }
}