blob: a49b8654e45a994fb874780d890b412c120380df [file] [log] [blame]
library /*isNonNullableByDefault*/;
import self as self;
import "const_canonical_type_lib.dart" as con;
import "dart:core" as core;
import "dart:async";
import "org-dartlang-testcase:///const_canonical_type_lib.dart" as oo;
typedef F1 = () con::A<FutureOr<dynamic>>;
typedef F2 = () con::A<dynamic>;
typedef F3 = () con::A<FutureOr<FutureOr<dynamic>?>>;
typedef F4 = () con::A<dynamic>;
class Check extends core::Object /*hasConstConstructor*/ {
final field dynamic _ignored;
const constructor •(dynamic x, dynamic y) self::Check
: assert(core::identical(x, y)), self::Check::_ignored = core::identical(x, y) ?{core::int} 42 : 1.{core::num::~/}(0), super core::Object::•()
;
}
static method expectEqual(dynamic x, dynamic y) void {
if(!x.{core::Object::==}(y)) {
throw "Arguments were supposed to be identical.";
}
}
static method test1() dynamic {
core::Type v = #C1;
self::expectEqual(#C1, v);
self::expectEqual(v, #C1);
self::expectEqual(#C1, con::v);
self::expectEqual(con::v, #C1);
self::expectEqual(#C1, #C1);
core::Type vf1 = #C2;
core::Type vf2 = #C2;
core::Type vf3 = #C2;
core::Type vf4 = #C2;
core::Type oovf1 = #C2;
core::Type oovf2 = #C2;
core::Type oovf3 = #C2;
core::Type oovf4 = #C2;
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, vf1);
self::expectEqual(vf1, vf2);
self::expectEqual(vf2, vf3);
self::expectEqual(vf3, vf4);
self::expectEqual(vf4, oovf1);
self::expectEqual(oovf1, oovf2);
self::expectEqual(oovf2, oovf3);
self::expectEqual(oovf3, oovf4);
self::expectEqual(oovf4, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
self::expectEqual(#C2, #C2);
return #C5;
}
static method main() dynamic {
self::test1();
}
library;
import self as con;
import "dart:core" as core;
import "dart:async";
typedef F1 = () →* con::A<FutureOr<dynamic>*>*;
typedef F2 = () →* con::A<dynamic>*;
typedef F3 = () →* con::A<FutureOr<FutureOr<dynamic>*>*>*;
typedef F4 = () →* con::A<dynamic>*;
class A<X extends core::Object* = dynamic> extends core::Object /*hasConstConstructor*/ {
const constructor •() con::A<con::A::X*>*
: super core::Object::•()
;
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 const field core::Type* c = #C1;
static field core::Type* v = #C1;
static const field con::A<core::List<() →* con::A<FutureOr<dynamic>*>*>*>* a1 = #C6;
static const field con::A<core::List<() →* con::A<dynamic>*>*>* a2 = #C6;
static const field con::A<core::List<() →* con::A<FutureOr<FutureOr<dynamic>*>*>*>*>* a3 = #C6;
static const field con::A<core::List<() →* con::A<dynamic>*>*>* a4 = #C6;
constants {
#C1 = TypeLiteralConstant(con::A<dynamic>*)
#C2 = TypeLiteralConstant(() →* con::A<dynamic>*)
#C3 = 42
#C4 = self::Check {_ignored:#C3}
#C5 = <dynamic>[#C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4]
#C6 = con::A<core::List<() →* con::A<dynamic>*>*> {}
}
Constructor coverage from constants:
org-dartlang-testcase:///const_canonical_type.dart:
- A. (from org-dartlang-testcase:///const_canonical_type_lib.dart:10:9)
- Check. (from org-dartlang-testcase:///const_canonical_type.dart:11:9)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart:25:9)
org-dartlang-testcase:///const_canonical_type_lib.dart:
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart:25:9)
- A. (from org-dartlang-testcase:///const_canonical_type_lib.dart:10:9)