blob: 321c92b2ecb2d498d26c7aaeae25bb52d7a6e9c7 [file] [log] [blame]
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 == 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 == null ?{core::String?} null : #t2{self::C}.{self::C::m} = "${index}${value}";
}
static method main() dynamic {
self::C? c = new self::C::•();
self::expect("", let final self::C? #t3 = c in #t3 == null ?{core::String?} null : #t3{self::C}.{self::C::m}{core::String});
self::_extension#0|set#setter(c, "42");
self::expect("42", let final self::C? #t4 = c in #t4 == null ?{core::String?} null : #t4{self::C}.{self::C::m}{core::String});
self::_extension#0|[]=(c, 42, "87");
self::expect("4287", let final self::C? #t5 = c in #t5 == null ?{core::String?} null : #t5{self::C}.{self::C::m}{core::String});
}
static method expect(dynamic expected, dynamic actual) dynamic {
if(!(expected =={core::Object::==}{(core::Object) core::bool} actual))
throw "Expected ${expected}, actual ${actual}";
}