blob: e6c6dad260a86131a94f80be05c41ca7c37fcba9 [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
class A extends core::Object {
synthetic constructor •() self::A
: super core::Object::•()
;
}
class B1<T extends core::Object? = dynamic> extends core::Object implements self::A {
synthetic constructor •() self::B1<self::B1::T%>
: super core::Object::•()
;
}
class B2<T extends core::Object? = dynamic> extends core::Object implements self::A {
synthetic constructor •() self::B2<self::B2::T%>
: super core::Object::•()
;
}
class C1<T extends core::Object? = dynamic> extends core::Object implements self::B1<self::C1::T%>, self::B2<self::C1::T%> {
synthetic constructor •() self::C1<self::C1::T%>
: super core::Object::•()
;
}
class C2<T extends core::Object? = dynamic> extends core::Object implements self::B1<self::C2::T%>, self::B2<self::C2::T%> {
synthetic constructor •() self::C2<self::C2::T%>
: super core::Object::•()
;
}
static method contextIterable<T extends core::Object? = dynamic>(core::Iterable<self::contextIterable::T%> x) core::Iterable<self::contextIterable::T%>
return x;
static method contextB1<T extends core::Object? = dynamic>(self::B1<self::contextB1::T%> x) self::B1<self::contextB1::T%>
return x;
static method test(core::bool b) dynamic {
self::C1<core::int> c1Int = new self::C1::•<core::int>();
self::C2<core::double> c2Double = new self::C2::•<core::double>();
self::contextB1<dynamic>(b ?{self::B1<dynamic>} c1Int : c2Double);
core::Iterable<core::int> iterableInt = <core::int>[] as core::Iterable<core::int>;
core::List<core::num> listNum = <core::num>[];
self::contextIterable<core::num>(b ?{core::Iterable<core::num>} iterableInt : listNum);
}
static method main() dynamic {
self::test(true);
}