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

Side by Side Diff: test/codegen/expect/fieldtest.js

Issue 1144303003: Use signature inheritance when method types are unchanged (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Remove empty signatures Created 5 years, 7 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
« no previous file with comments | « test/codegen/expect/constructors.js ('k') | test/codegen/expect/functions.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 var fieldtest = dart.defineLibrary(fieldtest, {}); 1 var fieldtest = dart.defineLibrary(fieldtest, {});
2 var core = dart.import(core); 2 var core = dart.import(core);
3 (function(exports, core) { 3 (function(exports, core) {
4 'use strict'; 4 'use strict';
5 class A extends core.Object { 5 class A extends core.Object {
6 A() { 6 A() {
7 this.x = 42; 7 this.x = 42;
8 } 8 }
9 } 9 }
10 dart.setSignature(A, {});
11 let B$ = dart.generic(function(T) { 10 let B$ = dart.generic(function(T) {
12 class B extends core.Object { 11 class B extends core.Object {
13 B() { 12 B() {
14 this.x = null; 13 this.x = null;
15 this.y = null; 14 this.y = null;
16 this.z = null; 15 this.z = null;
17 } 16 }
18 } 17 }
19 dart.setSignature(B, {});
20 return B; 18 return B;
21 }); 19 });
22 let B = B$(); 20 let B = B$();
23 function foo(a) { 21 function foo(a) {
24 core.print(a.x); 22 core.print(a.x);
25 return a.x; 23 return a.x;
26 } 24 }
27 dart.fn(foo, core.int, [A]); 25 dart.fn(foo, core.int, [A]);
28 function bar(a) { 26 function bar(a) {
29 core.print(dart.dload(a, 'x')); 27 core.print(dart.dload(a, 'x'));
(...skipping 23 matching lines...) Expand all
53 }, 51 },
54 set z(value) { 52 set z(value) {
55 exports.y = dart.as(value, core.int); 53 exports.y = dart.as(value, core.int);
56 } 54 }
57 }); 55 });
58 class BaseWithGetter extends core.Object { 56 class BaseWithGetter extends core.Object {
59 get foo() { 57 get foo() {
60 return 1; 58 return 1;
61 } 59 }
62 } 60 }
63 dart.setSignature(BaseWithGetter, {});
64 class Derived extends BaseWithGetter { 61 class Derived extends BaseWithGetter {
65 Derived() { 62 Derived() {
66 this.foo = 2; 63 this.foo = 2;
67 this.bar = 3; 64 this.bar = 3;
68 } 65 }
69 } 66 }
70 dart.virtualField(Derived, 'foo'); 67 dart.virtualField(Derived, 'foo');
71 dart.setSignature(Derived, {});
72 let Generic$ = dart.generic(function(T) { 68 let Generic$ = dart.generic(function(T) {
73 class Generic extends core.Object { 69 class Generic extends core.Object {
74 foo(t) { 70 foo(t) {
75 dart.as(t, T); 71 dart.as(t, T);
76 return core.print(dart.notNull(Generic$().bar) + dart.notNull(dart.as(t, core.String))); 72 return core.print(dart.notNull(Generic$().bar) + dart.notNull(dart.as(t, core.String)));
77 } 73 }
78 } 74 }
79 dart.setSignature(Generic, { 75 dart.setSignature(Generic, {
80 methods: () => ({foo: dart.functionType(dart.dynamic, [T])}) 76 methods: () => ({foo: dart.functionType(dart.dynamic, [T])})
81 }); 77 });
82 return Generic; 78 return Generic;
83 }); 79 });
84 let Generic = Generic$(); 80 let Generic = Generic$();
85 Generic.bar = 'hello'; 81 Generic.bar = 'hello';
86 class StaticFieldOrder1 extends core.Object {} 82 class StaticFieldOrder1 extends core.Object {}
87 dart.setSignature(StaticFieldOrder1, {});
88 StaticFieldOrder1.d = 4; 83 StaticFieldOrder1.d = 4;
89 StaticFieldOrder1.c = dart.notNull(StaticFieldOrder1.d) + 2; 84 StaticFieldOrder1.c = dart.notNull(StaticFieldOrder1.d) + 2;
90 StaticFieldOrder1.b = dart.notNull(StaticFieldOrder1.c) + 3; 85 StaticFieldOrder1.b = dart.notNull(StaticFieldOrder1.c) + 3;
91 StaticFieldOrder1.a = dart.notNull(StaticFieldOrder1.b) + 1; 86 StaticFieldOrder1.a = dart.notNull(StaticFieldOrder1.b) + 1;
92 class StaticFieldOrder2 extends core.Object {} 87 class StaticFieldOrder2 extends core.Object {}
93 dart.setSignature(StaticFieldOrder2, {});
94 StaticFieldOrder2.d = 4; 88 StaticFieldOrder2.d = 4;
95 StaticFieldOrder2.c = dart.notNull(StaticFieldOrder2.d) + 2; 89 StaticFieldOrder2.c = dart.notNull(StaticFieldOrder2.d) + 2;
96 StaticFieldOrder2.b = dart.notNull(StaticFieldOrder2.c) + 3; 90 StaticFieldOrder2.b = dart.notNull(StaticFieldOrder2.c) + 3;
97 StaticFieldOrder2.a = dart.notNull(StaticFieldOrder2.b) + 1; 91 StaticFieldOrder2.a = dart.notNull(StaticFieldOrder2.b) + 1;
98 function main() { 92 function main() {
99 let a = new A(); 93 let a = new A();
100 foo(a); 94 foo(a);
101 bar(a); 95 bar(a);
102 core.print(baz(a)); 96 core.print(baz(a));
103 core.print(new (Generic$(core.String))().foo(' world')); 97 core.print(new (Generic$(core.String))().foo(' world'));
104 } 98 }
105 dart.fn(main, dart.void, []); 99 dart.fn(main, dart.void, []);
106 // Exports: 100 // Exports:
107 exports.A = A; 101 exports.A = A;
108 exports.B$ = B$; 102 exports.B$ = B$;
109 exports.B = B; 103 exports.B = B;
110 exports.foo = foo; 104 exports.foo = foo;
111 exports.bar = bar; 105 exports.bar = bar;
112 exports.baz = baz; 106 exports.baz = baz;
113 exports.compute = compute; 107 exports.compute = compute;
114 exports.BaseWithGetter = BaseWithGetter; 108 exports.BaseWithGetter = BaseWithGetter;
115 exports.Derived = Derived; 109 exports.Derived = Derived;
116 exports.Generic$ = Generic$; 110 exports.Generic$ = Generic$;
117 exports.Generic = Generic; 111 exports.Generic = Generic;
118 exports.StaticFieldOrder1 = StaticFieldOrder1; 112 exports.StaticFieldOrder1 = StaticFieldOrder1;
119 exports.StaticFieldOrder2 = StaticFieldOrder2; 113 exports.StaticFieldOrder2 = StaticFieldOrder2;
120 exports.main = main; 114 exports.main = main;
121 })(fieldtest, core); 115 })(fieldtest, core);
OLDNEW
« no previous file with comments | « test/codegen/expect/constructors.js ('k') | test/codegen/expect/functions.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698