| library; |
| import self as self; |
| import "dart:core" as core; |
| import "package:expect/expect.dart" as exp; |
| |
| abstract class A<T extends core::Object = dynamic> extends core::Object { |
| static field dynamic _redirecting# = <dynamic>[self::A::•]; |
| constructor empty() → void |
| : super core::Object::•() |
| ; |
| static factory •<T extends core::Object = dynamic>() → self::A<self::A::•::T> |
| let dynamic #redirecting_factory = self::B::• in let self::A::•::T #typeArg0 = null in let core::List<self::A::•::T> #typeArg1 = null in invalid-expression; |
| } |
| abstract class B<U extends core::Object = dynamic, W extends core::Object = dynamic> extends self::A<self::B::U> { |
| static field dynamic _redirecting# = <dynamic>[self::B::•]; |
| constructor empty() → void |
| : super self::A::empty() |
| ; |
| static factory •<U extends core::Object = dynamic, W extends core::Object = dynamic>() → self::B<self::B::•::U, self::B::•::W> |
| let dynamic #redirecting_factory = self::C::• in let self::B::•::U #typeArg0 = null in let self::B::•::W #typeArg1 = null in let core::Map<self::B::•::U, self::B::•::W> #typeArg2 = null in invalid-expression; |
| } |
| class C<V extends core::Object = dynamic, S extends core::Object = dynamic, R extends core::Object = dynamic> extends self::B<self::C::V, self::C::S> { |
| constructor •() → void |
| : super self::B::empty() |
| ; |
| method toString() → dynamic |
| return "${self::C::V},${self::C::S},${self::C::R}"; |
| } |
| static method main() → dynamic { |
| exp::Expect::equals("${new self::C::•<core::int, core::List<core::int>, core::Map<core::int, core::List<core::int>>>()}", "int,List<int>,Map<int, List<int>>"); |
| } |