| library; | 
 | import self as self; | 
 | import "dart:core" as core; | 
 |  | 
 | class Enum<T extends core::Object? = dynamic> extends core::_Enum /*isEnum*/  { | 
 |   enum-element static const field self::Enum<core::num> a = const self::Enum::•<core::num>(0, "a"); | 
 |   enum-element static const field self::Enum<core::String> b = const self::Enum::•<core::String>(1, "b"); | 
 |   enum-element static const field self::Enum<core::bool> c = const self::Enum::•<core::bool>(2, "c"); | 
 |   static const field core::List<self::Enum<dynamic>> values = const <self::Enum<dynamic>>[self::Enum::a, self::Enum::b, self::Enum::c]; | 
 |   const synthetic constructor •(core::int #index, core::String #name) → self::Enum<self::Enum::T%> | 
 |     : super core::_Enum::•(#index, #name) | 
 |     ; | 
 |   method _enumToString() → core::String | 
 |     return "Enum.${this.{core::_Enum::_name}{core::String}}"; | 
 | } | 
 | static method method1(self::Enum<dynamic> e) → dynamic | 
 |   ; | 
 | static method method2(self::Enum<core::num> e) → dynamic | 
 |   ; | 
 | static method method3(self::Enum<core::int> e) → dynamic | 
 |   ; | 
 | static method method4<T extends core::Object? = dynamic>(self::Enum<self::method4::T%> e) → dynamic | 
 |   ; | 
 | static method method5<T extends core::num>(self::Enum<self::method5::T> e) → dynamic | 
 |   ; | 
 |  | 
 |  | 
 | Extra constant evaluation status: | 
 | Evaluated: ConstructorInvocation @ org-dartlang-testcase:///generic_enum_switch.dart:8:3 -> InstanceConstant(const Enum<num>{_Enum.index: 0, _Enum._name: "a"}) | 
 | Evaluated: ConstructorInvocation @ org-dartlang-testcase:///generic_enum_switch.dart:9:3 -> InstanceConstant(const Enum<String>{_Enum.index: 1, _Enum._name: "b"}) | 
 | Evaluated: ConstructorInvocation @ org-dartlang-testcase:///generic_enum_switch.dart:10:3 -> InstanceConstant(const Enum<bool>{_Enum.index: 2, _Enum._name: "c"}) | 
 | Evaluated: ListLiteral @ org-dartlang-testcase:///generic_enum_switch.dart:7:6 -> ListConstant(const <Enum<dynamic>>[const Enum<num>{_Enum.index: 0, _Enum._name: "a"}, const Enum<String>{_Enum.index: 1, _Enum._name: "b"}, const Enum<bool>{_Enum.index: 2, _Enum._name: "c"}]) | 
 | Extra constant evaluation: evaluated: 9, effectively constant: 4 |