| library; |
| import self as self; |
| import "dart:core" as core; |
| |
| typedef Typedef1<X extends core::num> = self::Class<X>; |
| typedef Typedef2<X extends core::num> = self::ExtensionType<X>% /* erasure=core::int, declared=! */; |
| class Class<X extends core::Object? = dynamic> extends core::Object { |
| synthetic constructor •() → self::Class<self::Class::X%> |
| : super core::Object::•() |
| ; |
| } |
| extension type ExtensionType<X extends core::Object? = dynamic>(core::int i) { |
| abstract extension-type-member representation-field get i() → core::int; |
| constructor • = self::ExtensionType|constructor#; |
| constructor tearoff • = self::ExtensionType|constructor#_#new#tearOff; |
| } |
| static method method1() → dynamic |
| return new self::Class::•<core::num>(); |
| static extension-type-member method ExtensionType|constructor#<X extends core::Object? = dynamic>(core::int i) → self::ExtensionType<self::ExtensionType|constructor#::X%>% /* erasure=core::int, declared=! */ { |
| lowered final self::ExtensionType<self::ExtensionType|constructor#::X%>% /* erasure=core::int, declared=! */ #this = i; |
| return #this; |
| } |
| static extension-type-member method ExtensionType|constructor#_#new#tearOff<X extends core::Object? = dynamic>(core::int i) → self::ExtensionType<self::ExtensionType|constructor#_#new#tearOff::X%>% /* erasure=core::int, declared=! */ |
| return self::ExtensionType|constructor#<self::ExtensionType|constructor#_#new#tearOff::X%>(i); |
| static method method2() → dynamic |
| return self::ExtensionType|constructor#<core::num>(0); |
| static method _#Typedef1#new#tearOff<X extends core::num>() → self::Class<self::_#Typedef1#new#tearOff::X> |
| return new self::Class::•<self::_#Typedef1#new#tearOff::X>(); |
| static method _#Typedef2#new#tearOff<X extends core::num>(core::int i) → self::ExtensionType<self::_#Typedef2#new#tearOff::X>% /* erasure=core::int, declared=! */ |
| return self::ExtensionType|constructor#<self::_#Typedef2#new#tearOff::X>(i); |