| 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){(core::num) → core::int}, super core::Object::•() |
| ; |
| } |
| static method expectEqual(dynamic x, dynamic y) → void { |
| if(!(x =={core::Object::==}{(core::Object) → core::bool} 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) |
| - Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart:25:9) |
| - Check. (from org-dartlang-testcase:///const_canonical_type.dart:11:9) |
| |
| org-dartlang-testcase:///const_canonical_type_lib.dart: |
| - A. (from org-dartlang-testcase:///const_canonical_type_lib.dart:10:9) |
| - Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart:25:9) |