| library; |
| import self as self; |
| import "dart:core" as core; |
| import "dart:_error_utils" as _er; |
| |
| class C extends core::Object { |
| final field core::int? _f2; |
| final field core::int? _f3; |
| final field core::int? _f4; |
| constructor •(final core::int? i) → self::C |
| : self::C::_f2 = i, self::C::_f3 = i, self::C::_f4 = i, super core::Object::•() |
| ; |
| static synthetic method _#new#tearOff(final core::int? i) → self::C |
| return new self::C::•(i); |
| } |
| class A extends core::Object { |
| constructor •(final core::int? i) → self::A |
| : super core::Object::•() |
| ; |
| static synthetic method _#new#tearOff(final core::int? i) → self::A |
| return new self::A::•(i); |
| } |
| abstract class M3 extends core::Object /*isMixinDeclaration*/ { |
| } |
| abstract class D extends self::_D&A&M3 { |
| final field core::int? _f4; |
| constructor •(final core::int? i) → self::D |
| : self::D::_f4 = i, super self::_D&A&M3::•(i) |
| ; |
| } |
| abstract class M1 extends core::Object /*isMixinDeclaration*/ { |
| field core::int? _#M1#_f2 = null; |
| field core::bool _#M1#_f2#isSet = false; |
| field core::int? _#M1#_f3 = null; |
| field core::bool _#M1#_f3#isSet = false; |
| field core::int? _#M1#_f4 = null; |
| field core::bool _#M1#_f4#isSet = false; |
| get _f2() → core::int? |
| return this.{self::M1::_#M1#_f2#isSet}{core::bool} ?{core::int?} this.{self::M1::_#M1#_f2}{core::int?} : _er::_throwLateErrorFieldNI("_f2"); |
| set _f2(final core::int? _f2#param) → void { |
| this.{self::M1::_#M1#_f2#isSet} = true; |
| this.{self::M1::_#M1#_f2} = _f2#param; |
| } |
| get _f3() → core::int? |
| return this.{self::M1::_#M1#_f3#isSet}{core::bool} ?{core::int?} this.{self::M1::_#M1#_f3}{core::int?} : _er::_throwLateErrorFieldNI("_f3"); |
| set _f3(final core::int? _f3#param) → void |
| if(this.{self::M1::_#M1#_f3#isSet}{core::bool}) |
| _er::_throwLateErrorFieldAI("_f3"); |
| else { |
| this.{self::M1::_#M1#_f3#isSet} = true; |
| this.{self::M1::_#M1#_f3} = _f3#param; |
| } |
| get _f4() → core::int? { |
| if(!this.{self::M1::_#M1#_f4#isSet}{core::bool}) { |
| final core::int? #t1 = 0; |
| if(this.{self::M1::_#M1#_f4#isSet}{core::bool}) |
| _er::_throwLateErrorFieldADI("_f4"); |
| this.{self::M1::_#M1#_f4} = #t1; |
| this.{self::M1::_#M1#_f4#isSet} = true; |
| } |
| return this.{self::M1::_#M1#_f4}{core::int?}; |
| } |
| } |
| class B extends core::Object { |
| constructor •(final core::int? i) → self::B |
| : super core::Object::•() |
| ; |
| static synthetic method _#new#tearOff(final core::int? i) → self::B |
| return new self::B::•(i); |
| } |
| class E extends self::_E&B&M1 implements self::D { |
| constructor •(final core::int? i) → self::E |
| : super self::_E&B&M1::•(i) |
| ; |
| static synthetic method _#new#tearOff(final core::int? i) → self::E |
| return new self::E::•(i); |
| @#C1 |
| method noSuchMethod(final core::Invocation invocation) → dynamic |
| return super.{core::Object::noSuchMethod}(invocation); |
| } |
| abstract class _D&A&M3 extends self::A implements self::M3 /*isAnonymousMixin,isEliminatedMixin*/ { |
| synthetic constructor •(final core::int? i) → self::_D&A&M3 |
| : super self::A::•(i) |
| ; |
| } |
| abstract class _E&B&M1 extends self::B implements self::M1 /*isAnonymousMixin,isEliminatedMixin*/ { |
| field core::int? _#M1#_f2 = null; |
| field core::bool _#M1#_f2#isSet = false; |
| field core::int? _#M1#_f3 = null; |
| field core::bool _#M1#_f3#isSet = false; |
| field core::int? _#M1#_f4 = null; |
| field core::bool _#M1#_f4#isSet = false; |
| synthetic constructor •(final core::int? i) → self::_E&B&M1 |
| : super self::B::•(i) |
| ; |
| get _f2() → core::int? |
| return this.{self::M1::_#M1#_f2#isSet}{core::bool} ?{core::int?} this.{self::M1::_#M1#_f2}{core::int?} : _er::_throwLateErrorFieldNI("_f2"); |
| get _f3() → core::int? |
| return this.{self::M1::_#M1#_f3#isSet}{core::bool} ?{core::int?} this.{self::M1::_#M1#_f3}{core::int?} : _er::_throwLateErrorFieldNI("_f3"); |
| get _f4() → core::int? { |
| if(!this.{self::M1::_#M1#_f4#isSet}{core::bool}) { |
| final core::int? #t2 = 0; |
| if(this.{self::M1::_#M1#_f4#isSet}{core::bool}) |
| _er::_throwLateErrorFieldADI("_f4"); |
| this.{self::M1::_#M1#_f4} = #t2; |
| this.{self::M1::_#M1#_f4#isSet} = true; |
| } |
| return this.{self::M1::_#M1#_f4}{core::int?}; |
| } |
| set _f2(final core::int? _f2#param) → void { |
| this.{self::M1::_#M1#_f2#isSet} = true; |
| this.{self::M1::_#M1#_f2} = _f2#param; |
| } |
| set _f3(final core::int? _f3#param) → void |
| if(this.{self::M1::_#M1#_f3#isSet}{core::bool}) |
| _er::_throwLateErrorFieldAI("_f3"); |
| else { |
| this.{self::M1::_#M1#_f3#isSet} = true; |
| this.{self::M1::_#M1#_f3} = _f3#param; |
| } |
| } |
| static method acceptsInt(final core::int x) → void {} |
| static method testConflictWithNoSuchMethodForwarderIfImplementedInMixin(final self::C c) → void { |
| if(!(c.{self::C::_f2}{core::int?} == null)) { |
| core::int? x = c.{self::C::_f2}{core::int?}; |
| x = null; |
| } |
| } |
| static method testNoConflictWithNoSuchMethodForwarderIfImplementedInMixin1(final self::C c) → void { |
| if(!(c.{self::C::_f3}{core::int?} == null)) { |
| final core::int x = c.{self::C::_f3}{core::int?} as{Unchecked} core::int; |
| self::acceptsInt(x); |
| } |
| } |
| static method testNoConflictWithNoSuchMethodForwarderIfImplementedInMixin2(final self::C c) → void { |
| if(!(c.{self::C::_f4}{core::int?} == null)) { |
| final core::int x = c.{self::C::_f4}{core::int?} as{Unchecked} core::int; |
| self::acceptsInt(x); |
| } |
| } |
| static method main() → dynamic { |
| { |
| final synthesized core::Iterator<self::C> #forIterator = <self::C>[new self::C::•(null), new self::C::•(0)].{core::Iterable::iterator}{core::Iterator<self::C>}; |
| for (; #forIterator.{core::Iterator::moveNext}(){() → core::bool}; ) { |
| final self::C c = #forIterator.{core::Iterator::current}{self::C}; |
| { |
| self::testConflictWithNoSuchMethodForwarderIfImplementedInMixin(c); |
| self::testNoConflictWithNoSuchMethodForwarderIfImplementedInMixin1(c); |
| self::testNoConflictWithNoSuchMethodForwarderIfImplementedInMixin2(c); |
| } |
| } |
| } |
| } |
| |
| constants { |
| #C1 = core::_Override {} |
| } |