Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(999)

Side by Side Diff: pkg/front_end/testcases/rasta/super_mixin.dart.direct.expect

Issue 2953503002: Only set types of conditional expressions in strong mode. (Closed)
Patch Set: Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 library; 1 library;
2 import self as self; 2 import self as self;
3 import "dart:core" as core; 3 import "dart:core" as core;
4 import "./mixin_library.dart" as mix; 4 import "./mixin_library.dart" as mix;
5 5
6 class Super<S extends core::Object> extends core::Object { 6 class Super<S extends core::Object> extends core::Object {
7 constructor •() → void 7 constructor •() → self::Super<self::Super::S>
8 : super core::Object::•() 8 : super core::Object::•();
9 ;
10 method foo() → dynamic 9 method foo() → dynamic
11 return 40; 10 return 40;
12 method f() → dynamic 11 method f() → dynamic
13 return 3; 12 return 3;
14 } 13 }
15 abstract class Super&Mixin^#T0^#T0<#T0 extends core::Object> = self::Super<self: :Super&Mixin^#T0^#T0::#T0> with mix::Mixin<self::Super&Mixin^#T0^#T0::#T0> { 14 class C<V extends core::Object> extends self::Super+Mixin#3<self::C::V, self::C: :V> {
15 constructor •() → self::C<self::C::V>
16 : super self::Super+Mixin#3::•();
16 } 17 }
17 class C<V extends core::Object> extends self::Super&Mixin^#T0^#T0<self::C::V> { 18 class D extends self::Super+Mixin#2<dynamic> {
18 constructor •() → void 19 constructor •() → self::D
19 : super self::Super::•() 20 : super self::Super+Mixin#2::•();
20 ;
21 } 21 }
22 abstract class Super&Mixin = self::Super<dynamic> with mix::Mixin<dynamic> { 22 class C2<V extends core::Object> extends self::Super+Mixin#1<self::C2::V, self:: C2::V> {
23 constructor •() → self::Super<self::C2::V>
24 : super self::Super+Mixin#1::•();
23 } 25 }
24 class D extends self::Super&Mixin { 26 class D2 extends self::Super+Mixin#0<dynamic> {
25 constructor •() → void 27 constructor •() → self::Super<dynamic>
26 : super self::Super::•() 28 : super self::Super+Mixin#0::•();
27 ;
28 } 29 }
29 class C2<V extends core::Object> = self::Super<self::C2::V> with mix::Mixin<self ::C2::V> { 30 abstract class Super+Mixin#0<T extends core::Object> extends self::Super<dynamic > implements mix::Mixin<dynamic> {
30 constructor •() → void 31 field self::Super+Mixin#0::T t;
31 : super self::Super::•() 32 field dynamic z;
32 ; 33 field dynamic y;
34 field dynamic x;
35 constructor •() → self::Super<dynamic>
36 : self::Super+Mixin#0::x = mix::f(), super self::Super::•();
37 method publicMethod() → dynamic
38 return this._privateMethod();
39 method _privateMethod() → dynamic
40 return 49;
41 method l() → dynamic
42 return mix::_private();
43 method h() → dynamic
44 return mix::V();
45 method g(self::Super+Mixin#0::T a) → self::Super+Mixin#0::T
46 return null;
47 method foo() → dynamic
48 return super.{self::Super::foo}().+(mix::f());
33 } 49 }
34 class D2 = self::Super<dynamic> with mix::Mixin<dynamic> { 50 abstract class Super+Mixin#1<T extends core::Object, V extends core::Object> ext ends self::Super<self::Super+Mixin#1::V> implements mix::Mixin<self::Super+Mixin #1::V> {
35 constructor •() → void 51 field self::Super+Mixin#1::T t;
36 : super self::Super::•() 52 field dynamic z;
37 ; 53 field dynamic y;
54 field dynamic x;
55 constructor •() → self::Super<self::Super+Mixin#1::V>
56 : self::Super+Mixin#1::x = mix::f(), super self::Super::•();
57 method publicMethod() → dynamic
58 return this._privateMethod();
59 method _privateMethod() → dynamic
60 return 49;
61 method l() → dynamic
62 return mix::_private();
63 method h() → dynamic
64 return mix::V();
65 method g(self::Super+Mixin#1::T a) → self::Super+Mixin#1::T
66 return null;
67 method foo() → dynamic
68 return super.{self::Super::foo}().+(mix::f());
69 }
70 abstract class Super+Mixin#2<T extends core::Object> extends self::Super<dynamic > implements mix::Mixin<dynamic> {
71 field self::Super+Mixin#2::T t;
72 field dynamic z;
73 field dynamic y;
74 field dynamic x;
75 constructor •() → self::Super<dynamic>
76 : self::Super+Mixin#2::x = mix::f(), super self::Super::•();
77 method publicMethod() → dynamic
78 return this._privateMethod();
79 method _privateMethod() → dynamic
80 return 49;
81 method l() → dynamic
82 return mix::_private();
83 method h() → dynamic
84 return mix::V();
85 method g(self::Super+Mixin#2::T a) → self::Super+Mixin#2::T
86 return null;
87 method foo() → dynamic
88 return super.{self::Super::foo}().+(mix::f());
89 }
90 abstract class Super+Mixin#3<T extends core::Object, V extends core::Object> ext ends self::Super<self::Super+Mixin#3::V> implements mix::Mixin<self::Super+Mixin #3::V> {
91 field self::Super+Mixin#3::T t;
92 field dynamic z;
93 field dynamic y;
94 field dynamic x;
95 constructor •() → self::Super<self::Super+Mixin#3::V>
96 : self::Super+Mixin#3::x = mix::f(), super self::Super::•();
97 method publicMethod() → dynamic
98 return this._privateMethod();
99 method _privateMethod() → dynamic
100 return 49;
101 method l() → dynamic
102 return mix::_private();
103 method h() → dynamic
104 return mix::V();
105 method g(self::Super+Mixin#3::T a) → self::Super+Mixin#3::T
106 return null;
107 method foo() → dynamic
108 return super.{self::Super::foo}().+(mix::f());
38 } 109 }
39 static method main() → dynamic { 110 static method main() → dynamic {
40 core::print(new self::C::•<dynamic>().foo()); 111 core::print(new self::C::•<dynamic>().foo());
41 core::print(new self::C2::•<dynamic>().foo()); 112 core::print(new self::C2::•<dynamic>().foo());
42 } 113 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698