| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| class A extends core::Object { |
| field dynamic field = null; |
| synthetic constructor •() → self::A |
| : super core::Object::•() |
| ; |
| } |
| class B extends core::Object { |
| field dynamic field = null; |
| synthetic constructor •() → self::B |
| : super core::Object::•() |
| ; |
| } |
| class C extends core::Object { |
| synthetic constructor •() → self::C |
| : super core::Object::•() |
| ; |
| operator ==(core::Object x) → core::bool |
| return false; |
| } |
| class X extends core::Object implements self::A, self::B { |
| field dynamic field = null; |
| synthetic constructor •() → self::X |
| : super core::Object::•() |
| ; |
| } |
| static method useAsA(self::A object) → void { |
| dynamic _ = object.{self::A::field}{dynamic}; |
| } |
| static method useAsB(self::B object) → void { |
| dynamic _ = object.{self::B::field}{dynamic}; |
| self::escape(object); |
| } |
| static method escape(dynamic x) → void { |
| x == null ?{dynamic} x = "" : null; |
| x == null ?{dynamic} x = 45 : null; |
| if(!(x is{ForNonNullableByDefault} core::int) && !(x is{ForNonNullableByDefault} core::String)) { |
| x{dynamic}.field = 45; |
| } |
| } |
| static method main() → dynamic { |
| self::X object = new self::X::•(); |
| self::useAsA(new self::A::•()); |
| self::useAsA(object); |
| self::useAsB(new self::B::•()); |
| self::useAsB(object); |
| } |