blob: d26702c68815911f21ca8e3f02172d09bf6c0b3c [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
class Class extends core::Object {
static field core::int? lateStaticField1Init = null;
static field core::int? _#lateStaticField1 = null;
static field dynamic _#lateStaticField1#isSet = false;
static field core::int? lateStaticField2Init = null;
static field core::int? _#lateStaticField2 = null;
static field dynamic _#lateStaticField2#isSet = false;
field core::int? lateInstanceFieldInit = null;
field core::int? _#lateInstanceField = null;
field dynamic _#lateInstanceField#isSet = false;
synthetic constructor •() self::Class*
: super core::Object::•()
;
static method initLateStaticField1(core::int value) core::int? {
return self::Class::lateStaticField1Init = value;
}
static get lateStaticField1() core::int? {
if(!self::Class::_#lateStaticField1#isSet) {
self::Class::_#lateStaticField1#isSet = true;
self::Class::_#lateStaticField1 = self::Class::initLateStaticField1(87);
}
return self::Class::_#lateStaticField1;
}
static method initLateStaticField2(core::int value) core::int? {
return self::Class::lateStaticField2Init = value;
}
static get lateStaticField2() core::int? {
if(!self::Class::_#lateStaticField2#isSet) {
self::Class::_#lateStaticField2#isSet = true;
self::Class::_#lateStaticField2 = self::Class::initLateStaticField2(42);
}
return self::Class::_#lateStaticField2;
}
static method staticMethod() dynamic {
self::expect(null, self::Class::lateStaticField2Init);
self::expect(42, self::Class::lateStaticField2);
self::expect(42, self::Class::lateStaticField2Init);
}
method initLateInstanceField(core::int value) core::int? {
return this.{self::Class::lateInstanceFieldInit} = value;
}
get lateInstanceField() core::int? {
if(!this.{self::Class::_#lateInstanceField#isSet}) {
this.{self::Class::_#lateInstanceField#isSet} = true;
this.{self::Class::_#lateInstanceField} = this.{self::Class::initLateInstanceField}(16);
}
return this.{self::Class::_#lateInstanceField};
}
method instanceMethod() dynamic {
self::expect(null, this.{self::Class::lateInstanceFieldInit});
self::expect(16, this.{self::Class::lateInstanceField});
self::expect(16, this.{self::Class::lateInstanceFieldInit});
}
}
static field core::int? lateTopLevelField1Init;
static field core::int? _#lateTopLevelField1 = null;
static field dynamic _#lateTopLevelField1#isSet = false;
static method initLateTopLevelField1(core::int value) core::int? {
return self::lateTopLevelField1Init = value;
}
static get lateTopLevelField1() core::int? {
if(!self::_#lateTopLevelField1#isSet) {
self::_#lateTopLevelField1#isSet = true;
self::_#lateTopLevelField1 = self::initLateTopLevelField1(123);
}
return self::_#lateTopLevelField1;
}
static method main() dynamic {
self::expect(null, self::lateTopLevelField1Init);
self::expect(123, self::lateTopLevelField1);
self::expect(123, self::lateTopLevelField1Init);
self::expect(null, self::Class::lateStaticField1Init);
self::expect(87, self::Class::lateStaticField1);
self::expect(87, self::Class::lateStaticField1Init);
self::Class::staticMethod();
new self::Class::•().{self::Class::instanceMethod}();
}
static method expect(dynamic expected, dynamic actual) dynamic {
if(!expected.{core::Object::==}(actual))
throw "Expected ${expected}, actual ${actual}";
}