library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

class Foo extends core::_Enum /*isEnum*/  {
  static const field core::List<self::Foo> values = #C7;
  static const field self::Foo ec1 = #C3;
  static const field self::Foo ec2 = #C6;
  const constructor •(core::int #index, core::String #name) → self::Foo
    : super core::_Enum::•(#index, #name)
    ;
  method toString() → core::String
    return "Foo.${this.{core::_Enum::_name}{core::String}}";
}
static method main() → dynamic {}

constants  {
  #C1 = 0
  #C2 = "ec1"
  #C3 = self::Foo {index:#C1, _name:#C2}
  #C4 = 1
  #C5 = "ec2"
  #C6 = self::Foo {index:#C4, _name:#C5}
  #C7 = <self::Foo*>[#C3, #C6]
}


Constructor coverage from constants:
org-dartlang-testcase:///enum.dart:
- Foo. (from org-dartlang-testcase:///enum.dart:5:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart:103:9)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart:25:9)
