blob: a5b6962c3027bd66c52ddde0a8e0a8f5ef64e33d [file] [log] [blame]
library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
import "main_lib.dart" as mai;
import "org-dartlang-testcase:///main_lib.dart";
typedef H<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic> = mai::A<Y%>;
static field dynamic H_new = #C1;
static field dynamic H_named = #C2;
static field dynamic H_fact = #C3;
static field dynamic H_redirect = #C4;
static field dynamic F_new = #C5;
static field dynamic F_named = #C6;
static field dynamic F_fact = #C7;
static field dynamic F_redirect = #C8;
static method main() dynamic {
self::expect(true, core::identical(self::F_new, mai::F_new_lib));
self::expect(false, core::identical(self::F_new, mai::F_named_lib));
self::expect(false, core::identical(self::F_new, mai::F_fact_lib));
self::expect(false, core::identical(self::F_new, mai::F_redirect_lib));
self::expect(false, core::identical(self::F_new, mai::G_new_lib));
self::expect(false, core::identical(self::F_new, mai::G_named_lib));
self::expect(false, core::identical(self::F_new, mai::G_fact_lib));
self::expect(false, core::identical(self::F_new, mai::G_redirect_lib));
self::expect(false, core::identical(self::F_new, self::H_new));
self::expect(false, core::identical(self::F_new, self::H_named));
self::expect(false, core::identical(self::F_new, self::H_fact));
self::expect(false, core::identical(self::F_new, self::H_redirect));
self::expect(false, core::identical(self::F_named, mai::F_new_lib));
self::expect(true, core::identical(self::F_named, mai::F_named_lib));
self::expect(false, core::identical(self::F_named, mai::F_fact_lib));
self::expect(false, core::identical(self::F_named, mai::F_redirect_lib));
self::expect(false, core::identical(self::F_named, mai::G_new_lib));
self::expect(false, core::identical(self::F_named, mai::G_named_lib));
self::expect(false, core::identical(self::F_named, mai::G_fact_lib));
self::expect(false, core::identical(self::F_named, mai::G_redirect_lib));
self::expect(false, core::identical(self::F_named, self::H_new));
self::expect(false, core::identical(self::F_named, self::H_named));
self::expect(false, core::identical(self::F_named, self::H_fact));
self::expect(false, core::identical(self::F_named, self::H_redirect));
self::expect(false, core::identical(self::F_fact, mai::F_new_lib));
self::expect(false, core::identical(self::F_fact, mai::F_named_lib));
self::expect(true, core::identical(self::F_fact, mai::F_fact_lib));
self::expect(false, core::identical(self::F_fact, mai::F_redirect_lib));
self::expect(false, core::identical(self::F_fact, mai::G_new_lib));
self::expect(false, core::identical(self::F_fact, mai::G_named_lib));
self::expect(false, core::identical(self::F_fact, mai::G_fact_lib));
self::expect(false, core::identical(self::F_fact, mai::G_redirect_lib));
self::expect(false, core::identical(self::F_fact, self::H_new));
self::expect(false, core::identical(self::F_fact, self::H_named));
self::expect(false, core::identical(self::F_fact, self::H_fact));
self::expect(false, core::identical(self::F_fact, self::H_redirect));
self::expect(false, core::identical(self::F_redirect, mai::F_new_lib));
self::expect(false, core::identical(self::F_redirect, mai::F_named_lib));
self::expect(false, core::identical(self::F_redirect, mai::F_fact_lib));
self::expect(true, core::identical(self::F_redirect, mai::F_redirect_lib));
self::expect(false, core::identical(self::F_redirect, mai::G_new_lib));
self::expect(false, core::identical(self::F_redirect, mai::G_named_lib));
self::expect(false, core::identical(self::F_redirect, mai::G_fact_lib));
self::expect(false, core::identical(self::F_redirect, mai::G_redirect_lib));
self::expect(false, core::identical(self::F_redirect, self::H_new));
self::expect(false, core::identical(self::F_redirect, self::H_named));
self::expect(false, core::identical(self::F_redirect, self::H_fact));
self::expect(false, core::identical(self::F_redirect, self::H_redirect));
}
static method expect(dynamic expected, dynamic actual) dynamic {
if(!(expected =={core::Object::==}{(core::Object) core::bool} actual))
throw "Expected ${expected}, actual ${actual}";
}
static method _#H#fact#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>(self::_#H#fact#tearOff::Y% a, {core::int? b = #C9, core::int c = #C10}) → mai::A<self::_#H#fact#tearOff::Y%>
return mai::A::fact<self::_#H#fact#tearOff::Y%>(a, b: b, c: c);
static method _#H#redirect#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() → mai::A<self::_#H#redirect#tearOff::Y%>
return mai::A::_#redirect#tearOff<self::_#H#redirect#tearOff::Y%>();
static method _#H#new#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() → mai::A<self::_#H#new#tearOff::Y%>
return new mai::A::•<self::_#H#new#tearOff::Y%>();
static method _#H#named#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>(self::_#H#named#tearOff::Y% a, [core::int? b = #C9]) → mai::A<self::_#H#named#tearOff::Y%>
return new mai::A::named<self::_#H#named#tearOff::Y%>(a, b);
library /*isNonNullableByDefault*/;
import self as mai;
import "dart:core" as core;
typedef F<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic> = mai::A<Y%>;
typedef G<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic> = mai::A<Y%>;
class A<T extends core::Object? = dynamic> extends core::Object {
static final field dynamic _redirecting# = <dynamic>[mai::A::redirect]/*isLegacy*/;
constructor •() mai::A<mai::A::T%>
: super core::Object::•()
;
constructor named(mai::A::T% a, [core::int? b = #C9]) → mai::A<mai::A::T%>
: super core::Object::•()
;
static method _#new#tearOff<T extends core::Object? = dynamic>() → mai::A<mai::A::_#new#tearOff::T%>
return new mai::A::•<mai::A::_#new#tearOff::T%>();
static method _#named#tearOff<T extends core::Object? = dynamic>(mai::A::_#named#tearOff::T% a, [core::int? b = #C9]) → mai::A<mai::A::_#named#tearOff::T%>
return new mai::A::named<mai::A::_#named#tearOff::T%>(a, b);
static factory fact<T extends core::Object? = dynamic>(mai::A::fact::T% a, {core::int? b = #C9, core::int c = #C10}) → mai::A<mai::A::fact::T%>
return new mai::A::•<mai::A::fact::T%>();
static method _#fact#tearOff<T extends core::Object? = dynamic>(mai::A::_#fact#tearOff::T% a, {core::int? b = #C9, core::int c = #C10}) → mai::A<mai::A::_#fact#tearOff::T%>
return mai::A::fact<mai::A::_#fact#tearOff::T%>(a, b: b, c: c);
static factory redirect<T extends core::Object? = dynamic>() mai::A<mai::A::redirect::T%>
let Never #redirecting_factory = mai::A::• in let mai::A::redirect::T% #typeArg0 = null in invalid-expression;
static method _#redirect#tearOff<T extends core::Object? = dynamic>() → mai::A<mai::A::_#redirect#tearOff::T%>
return new mai::A::•<mai::A::_#redirect#tearOff::T%>();
}
static field dynamic F_new_lib = #C5;
static field dynamic F_named_lib = #C6;
static field dynamic F_fact_lib = #C7;
static field dynamic F_redirect_lib = #C8;
static field dynamic G_new_lib = #C11;
static field dynamic G_named_lib = #C12;
static field dynamic G_fact_lib = #C13;
static field dynamic G_redirect_lib = #C14;
static method _#F#new#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() → mai::A<mai::_#F#new#tearOff::Y%>
return new mai::A::•<mai::_#F#new#tearOff::Y%>();
static method _#F#named#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>(mai::_#F#named#tearOff::Y% a, [core::int? b = #C9]) → mai::A<mai::_#F#named#tearOff::Y%>
return new mai::A::named<mai::_#F#named#tearOff::Y%>(a, b);
static method _#F#fact#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>(mai::_#F#fact#tearOff::Y% a, {core::int? b = #C9, core::int c = #C10}) → mai::A<mai::_#F#fact#tearOff::Y%>
return mai::A::fact<mai::_#F#fact#tearOff::Y%>(a, b: b, c: c);
static method _#F#redirect#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() → mai::A<mai::_#F#redirect#tearOff::Y%>
return mai::A::_#redirect#tearOff<mai::_#F#redirect#tearOff::Y%>();
static method _#G#new#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() → mai::A<mai::_#G#new#tearOff::Y%>
return new mai::A::•<mai::_#G#new#tearOff::Y%>();
static method _#G#named#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>(mai::_#G#named#tearOff::Y% a, [core::int? b = #C9]) → mai::A<mai::_#G#named#tearOff::Y%>
return new mai::A::named<mai::_#G#named#tearOff::Y%>(a, b);
static method _#G#fact#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>(mai::_#G#fact#tearOff::Y% a, {core::int? b = #C9, core::int c = #C10}) → mai::A<mai::_#G#fact#tearOff::Y%>
return mai::A::fact<mai::_#G#fact#tearOff::Y%>(a, b: b, c: c);
static method _#G#redirect#tearOff<unrelated X extends core::Object? = dynamic, Y extends core::Object? = dynamic>() → mai::A<mai::_#G#redirect#tearOff::Y%>
return mai::A::_#redirect#tearOff<mai::_#G#redirect#tearOff::Y%>();
constants {
#C1 = static-tearoff self::_#H#new#tearOff
#C2 = static-tearoff self::_#H#named#tearOff
#C3 = static-tearoff self::_#H#fact#tearOff
#C4 = static-tearoff self::_#H#redirect#tearOff
#C5 = static-tearoff mai::_#F#new#tearOff
#C6 = static-tearoff mai::_#F#named#tearOff
#C7 = static-tearoff mai::_#F#fact#tearOff
#C8 = static-tearoff mai::_#F#redirect#tearOff
#C9 = null
#C10 = 42
#C11 = static-tearoff mai::_#G#new#tearOff
#C12 = static-tearoff mai::_#G#named#tearOff
#C13 = static-tearoff mai::_#G#fact#tearOff
#C14 = static-tearoff mai::_#G#redirect#tearOff
}