blob: 39064e3f99a0381e23aa7745e3a32ff9f04ba516 [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
class C<T extends core::Object* = dynamic> extends core::Object {
generic-covariant-impl field self::C::T* field1;
generic-covariant-impl field () →* self::C::T* field2;
field (self::C::T*) →* void field3;
generic-covariant-impl field (self::C::T*) →* self::C::T* field4;
generic-covariant-impl field () →* () →* self::C::T* field5;
field (() →* self::C::T*) →* void field6;
generic-covariant-impl field (() →* self::C::T*) →* self::C::T* field7;
generic-covariant-impl field ((self::C::T*) →* void) →* void field8;
generic-covariant-impl field ((self::C::T*) →* void) →* self::C::T* field9;
generic-covariant-impl field ((self::C::T*) →* self::C::T*) →* void field10;
generic-covariant-impl field ((self::C::T*) →* self::C::T*) →* self::C::T* field11;
generic-covariant-impl field <S extends self::C::T* = dynamic>() →* S* field12;
generic-covariant-impl field <S extends self::C::T* = dynamic>(S*) →* void field13;
generic-covariant-impl field <S extends self::C::T* = dynamic>(S*) →* S* field14;
generic-covariant-impl field (<S extends self::C::T* = dynamic>() →* S*) →* void field15;
constructor •(self::C::T* field1) self::C<self::C::T*>*
: self::C::field1 = field1, self::C::field2 = () self::C::T* => field1, self::C::field3 = (self::C::T* t) Null {}, self::C::field4 = (self::C::T* t) self::C::T* => t, self::C::field5 = () () →* self::C::T* => () self::C::T* => field1, self::C::field6 = (() →* self::C::T* f) Null {}, self::C::field7 = (() →* self::C::T* f) self::C::T* => field1, self::C::field8 = ((self::C::T*) →* void f) Null {}, self::C::field9 = ((self::C::T*) →* void f) self::C::T* => field1, self::C::field10 = ((self::C::T*) →* self::C::T* f) Null {}, self::C::field11 = ((self::C::T*) →* self::C::T* f) self::C::T* => field1, self::C::field12 = <S extends self::C::T* = self::C::T*>() Null => null, self::C::field13 = <S extends self::C::T* = self::C::T*>(S* s) Null {}, self::C::field14 = <S extends self::C::T* = self::C::T*>(S* s) S* => s, self::C::field15 = (<S extends self::C::T* = self::C::T*>() →* S* f) Null {}, super core::Object::•()
;
get getter1() self::C::T*
return this.{self::C::field1};
get getter2() () →* self::C::T*
return this.{self::C::field2};
get getter3() (self::C::T*) →* void
return this.{self::C::field3};
get getter4() (self::C::T*) →* self::C::T*
return this.{self::C::field4};
get getter5() () →* () →* self::C::T*
return this.{self::C::field5};
get getter6() (() →* self::C::T*) →* void
return this.{self::C::field6};
get getter7() (() →* self::C::T*) →* self::C::T*
return this.{self::C::field7};
get getter8() ((self::C::T*) →* void) →* void
return this.{self::C::field8};
get getter9() ((self::C::T*) →* void) →* self::C::T*
return this.{self::C::field9};
get getter10() ((self::C::T*) →* self::C::T*) →* void
return this.{self::C::field10};
get getter11() ((self::C::T*) →* self::C::T*) →* self::C::T*
return this.{self::C::field11};
get getter12() <S extends self::C::T* = dynamic>() →* S*
return this.{self::C::field12};
get getter13() <S extends self::C::T* = dynamic>(S*) →* void
return this.{self::C::field13};
get getter14() <S extends self::C::T* = dynamic>(S*) →* S*
return this.{self::C::field14};
get getter15() (<S extends self::C::T* = dynamic>() →* S*) →* void
return this.{self::C::field15};
set setter1(generic-covariant-impl self::C::T* value) void {
this.{self::C::field1} = value;
}
set setter2(generic-covariant-impl () →* self::C::T* value) void {
this.{self::C::field2} = value;
}
set setter3((self::C::T*) →* void value) void {
this.{self::C::field3} = value;
}
set setter4(generic-covariant-impl (self::C::T*) →* self::C::T* value) void {
this.{self::C::field4} = value;
}
set setter5(generic-covariant-impl () →* () →* self::C::T* value) void {
this.{self::C::field5} = value;
}
set setter6((() →* self::C::T*) →* void value) void {
this.{self::C::field6} = value;
}
set setter7(generic-covariant-impl (() →* self::C::T*) →* self::C::T* value) void {
this.{self::C::field7} = value;
}
set setter8(generic-covariant-impl ((self::C::T*) →* void) →* void value) void {
this.{self::C::field8} = value;
}
set setter9(generic-covariant-impl ((self::C::T*) →* void) →* self::C::T* value) void {
this.{self::C::field9} = value;
}
set setter10(generic-covariant-impl ((self::C::T*) →* self::C::T*) →* void value) void {
this.{self::C::field10} = value;
}
set setter11(generic-covariant-impl ((self::C::T*) →* self::C::T*) →* self::C::T* value) void {
this.{self::C::field11} = value;
}
set setter12(generic-covariant-impl <S extends self::C::T* = dynamic>() →* S* value) void {
this.{self::C::field12} = value;
}
set setter13(generic-covariant-impl <S extends self::C::T* = dynamic>(S*) →* void value) void {
this.{self::C::field13} = value;
}
set setter14(generic-covariant-impl <S extends self::C::T* = dynamic>(S*) →* S* value) void {
this.{self::C::field14} = value;
}
set setter15(generic-covariant-impl (<S extends self::C::T* = dynamic>() →* S*) →* void value) void {
this.{self::C::field15} = value;
}
method method1(generic-covariant-impl self::C::T* value) void {
this.{self::C::field1} = value;
}
method method2(generic-covariant-impl () →* self::C::T* value) void {
this.{self::C::field2} = value;
}
method method3((self::C::T*) →* void value) void {
this.{self::C::field3} = value;
}
method method4(generic-covariant-impl (self::C::T*) →* self::C::T* value) void {
this.{self::C::field4} = value;
}
method method5(generic-covariant-impl () →* () →* self::C::T* value) void {
this.{self::C::field5} = value;
}
method method6((() →* self::C::T*) →* void value) void {
this.{self::C::field6} = value;
}
method method7(generic-covariant-impl (() →* self::C::T*) →* self::C::T* value) void {
this.{self::C::field7} = value;
}
method method8(generic-covariant-impl ((self::C::T*) →* void) →* void value) void {
this.{self::C::field8} = value;
}
method method9(generic-covariant-impl ((self::C::T*) →* void) →* self::C::T* value) void {
this.{self::C::field9} = value;
}
method method10(generic-covariant-impl ((self::C::T*) →* self::C::T*) →* void value) void {
this.{self::C::field10} = value;
}
method method11(generic-covariant-impl ((self::C::T*) →* self::C::T*) →* self::C::T* value) void {
this.{self::C::field11} = value;
}
method method12(generic-covariant-impl <S extends self::C::T* = dynamic>() →* S* value) void {
this.{self::C::field12} = value;
}
method method13(generic-covariant-impl <S extends self::C::T* = dynamic>(S*) →* void value) void {
this.{self::C::field13} = value;
}
method method14(generic-covariant-impl <S extends self::C::T* = dynamic>(S*) →* S* value) void {
this.{self::C::field14} = value;
}
method method15(generic-covariant-impl (<S extends self::C::T* = dynamic>() →* S*) →* void value) void {
this.{self::C::field15} = value;
}
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method toString() core::String*; -> core::Object::toString
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
static method main() dynamic {
self::C<core::num*>* c = new self::C::•<core::int*>(0);
c.{self::C::field1};
c.{self::C::field2};
try {
c.{self::C::field3} as{TypeError,CovarianceCheck} (core::num*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field4} as{TypeError,CovarianceCheck} (core::num*) →* core::num*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::field5};
try {
c.{self::C::field6} as{TypeError,CovarianceCheck} (() →* core::num*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field7} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::field8};
c.{self::C::field9};
try {
c.{self::C::field10} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field11} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field12} as{TypeError,CovarianceCheck} <S extends core::num* = dynamic>() →* S*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field13} as{TypeError,CovarianceCheck} <S extends core::num* = dynamic>(S*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field14} as{TypeError,CovarianceCheck} <S extends core::num* = dynamic>(S*) →* S*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::field15} as{TypeError,CovarianceCheck} (<S extends core::num* = dynamic>() →* S*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::getter1};
c.{self::C::getter2};
try {
c.{self::C::getter3} as{TypeError,CovarianceCheck} (core::num*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter4} as{TypeError,CovarianceCheck} (core::num*) →* core::num*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::getter5};
try {
c.{self::C::getter6} as{TypeError,CovarianceCheck} (() →* core::num*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter7} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::getter8};
c.{self::C::getter9};
try {
c.{self::C::getter10} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter11} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter12} as{TypeError,CovarianceCheck} <S extends core::num* = dynamic>() →* S*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter13} as{TypeError,CovarianceCheck} <S extends core::num* = dynamic>(S*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter14} as{TypeError,CovarianceCheck} <S extends core::num* = dynamic>(S*) →* S*;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::getter15} as{TypeError,CovarianceCheck} (<S extends core::num* = dynamic>() →* S*) →* void;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter1} = 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter2} = () core::double* => 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::setter3} = (core::num* n) Null {};
try {
c.{self::C::setter4} = (core::num* n) core::double* => 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter5} = () () →* core::double* => () core::double* => 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::setter6} = (() →* core::num* f) Null {};
try {
c.{self::C::setter7} = (() →* core::num* f) core::double* => 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter8} = ((core::double*) →* void f) Null {};
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter9} = ((core::double*) →* void f) core::double* => 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter10} = ((core::double*) →* core::num* f) Null {};
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter11} = ((core::double*) →* core::num* f) core::double* => 0.5;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter12} = <S extends core::num* = core::num*>() Null => null;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter13} = <S extends core::num* = core::num*>(S* s) Null {};
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter14} = <S extends core::num* = core::num*>(S* s) S* => s;
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::setter15} = (<S extends core::num* = core::num*>() →* S* f) Null {};
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method1}(0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method2}(() core::double* => 0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::method3}((core::num* n) Null {});
try {
c.{self::C::method4}((core::num* n) core::double* => 0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method5}(() () →* core::double* => () core::double* => 0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
c.{self::C::method6}((() →* core::num* f) Null {});
try {
c.{self::C::method7}((() →* core::num* f) core::double* => 0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method8}(((core::double*) →* void f) Null {});
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method9}(((core::double*) →* void f) core::double* => 0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method10}(((core::double*) →* core::num* f) Null {});
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method11}(((core::double*) →* core::num* f) core::double* => 0.5);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method12}(<S extends core::num* = core::num*>() Null => null);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method13}(<S extends core::num* = core::num*>(S* s) Null {});
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method14}(<S extends core::num* = core::num*>(S* s) S* => s);
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
try {
c.{self::C::method15}((<S extends core::num* = core::num*>() →* S* f) Null {});
throw "TypeError expected";
}
on core::TypeError* catch(final core::TypeError* e) {
core::print(e);
}
}