blob: 4df369e178395bc878782bac958b59759d52860e [file] [log] [blame]
library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() self::A<self::A::T%>
: super core::Object::•()
;
}
class B extends self::A<core::String> {
synthetic constructor •() self::B
: super self::A::•()
;
}
class C<T1 extends core::Object? = dynamic, T2 extends core::Object? = dynamic, T3 extends core::Object? = dynamic> extends self::B {
synthetic constructor •() self::C<self::C::T1%, self::C::T2%, self::C::T3%>
: super self::B::•()
;
}
class D<P extends core::Object? = dynamic, Q extends core::Object? = dynamic> extends self::C<core::int, self::D::Q%, self::D::P%> {
covariant-by-class field core::Map<self::D::P%, self::D::Q%> foo;
constructor •(dynamic tt) self::D<self::D::P%, self::D::Q%>
: self::D::foo = tt as{TypeError,ForDynamic,ForNonNullableByDefault} core::Map<self::D::P%, self::D::Q%>, super self::C::•()
;
method foo2(dynamic y) dynamic {
if(y is{ForNonNullableByDefault} self::A<self::D::P%>) {
core::print("21");
}
if(y is{ForNonNullableByDefault} self::C<dynamic, self::D::Q%, core::List<self::D::P%>>) {
core::print("22");
}
this.{self::D::foo} = y as{TypeError,ForDynamic,ForNonNullableByDefault} core::Map<self::D::P%, self::D::Q%>;
}
method foo3<T1 extends core::Object? = dynamic, T2 extends core::Object? = dynamic>(dynamic z) dynamic {
if(z is{ForNonNullableByDefault} self::A<self::D::foo3::T1%>) {
core::print("31");
}
if(z is{ForNonNullableByDefault} self::C<core::Map<self::D::foo3::T1%, self::D::P%>, core::List<self::D::foo3::T2%>, self::D::Q%>) {
core::print("32");
}
return (z as{ForNonNullableByDefault} core::Map<self::D::foo3::T2%, self::D::Q%>).{core::Map::values}{core::Iterable<self::D::Q%>};
}
method foo4(dynamic w) core::Map<self::D::P%, self::D::Q%> {
core::List<core::Map<self::D::P%, self::D::Q%>> list = core::_GrowableList::_literal1<core::Map<self::D::P%, self::D::Q%>>(w as{TypeError,ForDynamic,ForNonNullableByDefault} core::Map<self::D::P%, self::D::Q%>);
return w as{TypeError,ForDynamic,ForNonNullableByDefault} core::Map<self::D::P%, self::D::Q%>;
}
}
class E<P extends core::String> extends core::Object {
static factory •<P extends core::String>() self::E<self::E::•::P>
return throw "";
method foo6<covariant-by-class T extends self::E::P, U extends core::List<self::E::foo6::T> = core::List<self::E::P>>(core::Map<self::E::foo6::T, self::E::foo6::U> map) void {}
}
abstract class F<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() self::F<self::F::T%>
: super core::Object::•()
;
abstract method foo7<covariant-by-class Q extends self::F::T%>(self::F::foo7::Q% a, covariant-by-declaration core::num b, covariant-by-class self::F::T% c) void;
abstract method foo8<covariant-by-class Q extends self::F::T%>(self::F::foo8::Q% a, covariant-by-declaration core::num b, covariant-by-class self::F::T% c) void;
}
class G<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() self::G<self::G::T%>
: super core::Object::•()
;
method foo7<covariant-by-class Q extends self::G::T%>(self::G::foo7::Q% a, core::int b, covariant-by-class self::G::T% c) void {}
}
class H<T extends core::Object? = dynamic> extends self::G<self::H::T%> implements self::F<self::H::T%> {
synthetic constructor •() self::H<self::H::T%>
: super self::G::•()
;
method foo8<covariant-by-class Q extends self::H::T%>(self::H::foo8::Q% a, covariant-by-declaration core::int b, covariant-by-class self::H::T% c) void {}
forwarding-stub method foo7<covariant-by-class Q extends self::H::T%>(self::H::foo7::Q% a, covariant-by-declaration core::num b, covariant-by-class self::H::T% c) void
return super.{self::G::foo7}<self::H::foo7::Q%>(a, b as core::int, c);
}
late static field core::List<core::Iterable<dynamic>> globalVar;
static method foo1(dynamic x) dynamic {
if(x is{ForNonNullableByDefault} self::B) {
core::print("11");
}
if(x is{ForNonNullableByDefault} self::C<core::int, core::Object, dynamic>) {
core::print("12");
}
return x as{ForNonNullableByDefault} self::A<core::int>;
}
static method foo5(dynamic x) void {
self::globalVar = x as{TypeError,ForDynamic,ForNonNullableByDefault} core::List<core::Iterable<dynamic>>;
}
static method main() dynamic {}