| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| typedef F<unrelated T extends core::Object? = dynamic> = self::A; |
| typedef G<unrelated T extends core::num> = self::B<dynamic>; |
| class A extends core::Object { |
| field core::int field1; |
| constructor •(core::int field1) → self::A |
| ; |
| constructor named(core::int field1) → self::A |
| ; |
| static method _#new#tearOff(core::int field1) → self::A |
| return new self::A::•(field1); |
| static method _#named#tearOff(core::int field1) → self::A |
| return new self::A::named(field1); |
| } |
| class B<T extends core::Object? = dynamic> extends core::Object implements self::A { |
| field core::int field1; |
| covariant-by-class field self::B::T% field2; |
| constructor •(core::int field1, self::B::T% field2) → self::B<self::B::T%> |
| ; |
| constructor named(core::int field1, self::B::T% field2) → self::B<self::B::T%> |
| ; |
| static method _#new#tearOff<T extends core::Object? = dynamic>(core::int field1, self::B::_#new#tearOff::T% field2) → self::B<self::B::_#new#tearOff::T%> |
| return new self::B::•<self::B::_#new#tearOff::T%>(field1, field2); |
| static method _#named#tearOff<T extends core::Object? = dynamic>(core::int field1, self::B::_#named#tearOff::T% field2) → self::B<self::B::_#named#tearOff::T%> |
| return new self::B::named<self::B::_#named#tearOff::T%>(field1, field2); |
| } |
| static field (core::int) → self::A A_new; |
| static field <T extends core::Object? = dynamic>(core::int, T%) → self::B<T%> B_new; |
| static field <unrelated T extends core::Object? = dynamic>(core::int) → self::A F_new; |
| static field <unrelated T extends core::num>(core::int, dynamic) → self::B<dynamic> G_new; |
| static field (core::int) → self::A A_named; |
| static field (core::int, core::int) → self::B<core::int> B_named; |
| static field <unrelated T extends core::Object? = dynamic>(core::int) → self::A F_named; |
| static field (core::int, dynamic) → self::B<dynamic> G_named; |
| static method main() → dynamic |
| ; |
| static method _#F#new#tearOff<unrelated T extends core::Object? = dynamic>(core::int field1) → self::A |
| return new self::A::•(field1); |
| static method _#F#named#tearOff<unrelated T extends core::Object? = dynamic>(core::int field1) → self::A |
| return new self::A::named(field1); |
| static method _#G#new#tearOff<unrelated T extends core::num>(core::int field1, dynamic field2) → self::B<dynamic> |
| return new self::B::•<dynamic>(field1, field2); |
| static method _#G#named#tearOff<unrelated T extends core::num>(core::int field1, dynamic field2) → self::B<dynamic> |
| return new self::B::named<dynamic>(field1, field2); |