blob: 3ea2923b6388949d48f1caed458578abd95b7730 [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
import "package:expect/expect.dart" as exp;
class A<N extends core::Object = dynamic, S extends core::Object = dynamic, U extends core::Object = dynamic> extends core::Object {
final field core::List<self::A::U> field;
constructor •(self::A::N n, self::A::S s) void
: self::A::field = core::List::•<self::A::U>(), super core::Object::•() {
exp::Expect::isTrue(n is self::A::N);
exp::Expect::isTrue(s is self::A::S);
}
constructor empty() void
: self::A::field = null, super core::Object::•() {}
const constructor c(self::A::U u, self::A::S s) void
: self::A::field = const <dynamic>[null], super core::Object::•()
;
static factory f<N extends core::Object = dynamic, S extends core::Object = dynamic, U extends core::Object = dynamic>(self::A::f::S s) self::A<self::A::f::N, self::A::f::S, self::A::f::U> {
exp::Expect::isTrue(s is self::A::f::S);
return new self::A::empty<dynamic, dynamic, dynamic>();
}
get getter() core::List<self::A::U> {
return this.{self::A::field};
}
set setter(self::A::S s) void {}
}
abstract class J<Aa extends core::Object = dynamic, B extends core::Object = dynamic> extends core::Object {
synthetic constructor •() void
: super core::Object::•()
;
}
abstract class I<H extends core::Object = dynamic, C extends core::Object = dynamic, K extends core::Object = dynamic> extends self::J<self::I::C, self::I::K> {
synthetic constructor •() void
: super self::J::•()
;
}
static method main() dynamic {
new self::A::•<core::num, core::double, core::List<dynamic>>(1, 2.0);
self::A<dynamic, dynamic, dynamic> a = self::A::f<core::int, core::int, core::int>(1);
const self::A::c<core::int, core::int, core::List<dynamic>>(const <dynamic>[], 1);
dynamic z = a.getter;
a.setter = 1;
}