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

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

Issue 2949753002: Print static types of conditional expressions. (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 •() → self::Super<self::Super::S> 7 constructor •() → void
8 : super core::Object::•(); 8 : super core::Object::•()
9 ;
9 method foo() → dynamic 10 method foo() → dynamic
10 return 40; 11 return 40;
11 method f() → dynamic 12 method f() → dynamic
12 return 3; 13 return 3;
13 } 14 }
14 class C<V extends core::Object> extends self::Super+Mixin#3<self::C::V, self::C: :V> { 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> {
15 constructor •() → self::C<self::C::V>
16 : super self::Super+Mixin#3::•();
17 } 16 }
18 class D extends self::Super+Mixin#2<dynamic> { 17 class C<V extends core::Object> extends self::Super&Mixin^#T0^#T0<self::C::V> {
19 constructor •() → self::D 18 constructor •() → void
20 : super self::Super+Mixin#2::•(); 19 : super self::Super::•()
20 ;
21 } 21 }
22 class C2<V extends core::Object> extends self::Super+Mixin#1<self::C2::V, self:: C2::V> { 22 abstract class Super&Mixin = self::Super<dynamic> with mix::Mixin<dynamic> {
23 constructor •() → self::Super<self::C2::V>
24 : super self::Super+Mixin#1::•();
25 } 23 }
26 class D2 extends self::Super+Mixin#0<dynamic> { 24 class D extends self::Super&Mixin {
27 constructor •() → self::Super<dynamic> 25 constructor •() → void
28 : super self::Super+Mixin#0::•(); 26 : super self::Super::•()
27 ;
29 } 28 }
30 abstract class Super+Mixin#0<T extends core::Object> extends self::Super<dynamic > implements mix::Mixin<dynamic> { 29 class C2<V extends core::Object> = self::Super<self::C2::V> with mix::Mixin<self ::C2::V> {
31 field self::Super+Mixin#0::T t; 30 constructor •() → void
32 field dynamic z; 31 : super self::Super::•()
33 field dynamic y; 32 ;
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());
49 } 33 }
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> { 34 class D2 = self::Super<dynamic> with mix::Mixin<dynamic> {
51 field self::Super+Mixin#1::T t; 35 constructor •() → void
52 field dynamic z; 36 : super self::Super::•()
53 field dynamic y; 37 ;
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());
109 } 38 }
110 static method main() → dynamic { 39 static method main() → dynamic {
111 core::print(new self::C::•<dynamic>().foo()); 40 core::print(new self::C::•<dynamic>().foo());
112 core::print(new self::C2::•<dynamic>().foo()); 41 core::print(new self::C2::•<dynamic>().foo());
113 } 42 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698