library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class C extends core::Object { field core::String m = ""; synthetic constructor •() → self::C : super core::Object::•() ; set setter(core::String v) → void {} operator []=(core::int index, core::String value) → void {} } extension _extension#0 on self::C? { operator []= = self::_extension#0|[]=; set setter = self::_extension#0|set#setter; } static method _extension#0|set#setter(lowered final self::C? #this, core::String v) → void { let final self::C? #t1 = #this in #t1.{core::Object::==}(null) ?{core::String?} null : #t1{self::C}.{self::C::m} = v; } static method _extension#0|[]=(lowered final self::C? #this, core::int index, core::String value) → void { let final self::C? #t2 = #this in #t2.{core::Object::==}(null) ?{core::String?} null : #t2{self::C}.{self::C::m} = "${index}${value}"; } static method main() → dynamic { self::C? c = new self::C::•() as{ForNonNullableByDefault} self::C?; self::expect("", let final self::C? #t3 = c in #t3.{core::Object::==}(null) ?{core::String?} null : #t3{self::C}.{self::C::m}); self::_extension#0|set#setter(c, "42"); self::expect("42", let final self::C? #t4 = c in #t4.{core::Object::==}(null) ?{core::String?} null : #t4{self::C}.{self::C::m}); self::_extension#0|[]=(c, 42, "87"); self::expect("4287", let final self::C? #t5 = c in #t5.{core::Object::==}(null) ?{core::String?} null : #t5{self::C}.{self::C::m}); } static method expect(dynamic expected, dynamic actual) → dynamic { if(!expected.{core::Object::==}(actual)) throw "Expected ${expected}, actual ${actual}"; }