| OLD | NEW |
| 1 library; | 1 library; |
| 2 import self as self; | 2 import self as self; |
| 3 import "dart:core" as core; | 3 import "dart:core" as core; |
| 4 | 4 |
| 5 class A extends core::Object { | 5 class A extends core::Object { |
| 6 constructor •() → void | 6 constructor •() → void |
| 7 : super core::Object::•() | |
| 8 ; | 7 ; |
| 9 } | 8 } |
| 10 class B extends core::Object { | 9 class B extends core::Object { |
| 11 constructor •() → void | 10 constructor •() → void |
| 12 : super core::Object::•() | |
| 13 ; | 11 ; |
| 14 } | 12 } |
| 15 class AB1 extends self::A implements self::B { | 13 class AB1 extends self::A implements self::B { |
| 16 constructor •() → void | 14 constructor •() → void |
| 17 : super self::A::•() | |
| 18 ; | 15 ; |
| 19 } | 16 } |
| 20 class AB2 extends self::A implements self::B { | 17 class AB2 extends self::A implements self::B { |
| 21 constructor •() → void | 18 constructor •() → void |
| 22 : super self::A::•() | |
| 23 ; | 19 ; |
| 24 } | 20 } |
| 25 class BA1 extends self::B implements self::A { | 21 class BA1 extends self::B implements self::A { |
| 26 constructor •() → void | 22 constructor •() → void |
| 27 : super self::B::•() | |
| 28 ; | 23 ; |
| 29 } | 24 } |
| 30 class BA2 extends self::B implements self::A { | 25 class BA2 extends self::B implements self::A { |
| 31 constructor •() → void | 26 constructor •() → void |
| 32 : super self::B::•() | |
| 33 ; | 27 ; |
| 34 } | 28 } |
| 35 static method takeSubclassOfA(dynamic obj) → dynamic {} | 29 static method takeSubclassOfA(dynamic obj) → dynamic |
| 36 static method takeSubclassOfB(dynamic obj) → dynamic {} | 30 ; |
| 37 static method main() → dynamic { | 31 static method takeSubclassOfB(dynamic obj) → dynamic |
| 38 self::takeSubclassOfA(new self::AB1::•()); | 32 ; |
| 39 self::takeSubclassOfA(new self::AB2::•()); | 33 static method main() → dynamic |
| 40 self::takeSubclassOfB(new self::BA1::•()); | 34 ; |
| 41 self::takeSubclassOfB(new self::BA2::•()); | |
| 42 } | |
| OLD | NEW |