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

Side by Side Diff: pkg/dev_compiler/test/codegen_expected/closure.js

Issue 2797443007: fix #29182, generate top level const fields lazily (Closed)
Patch Set: fix Created 3 years, 8 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 export const closure = Object.create(null); 1 export const closure = Object.create(null);
2 import { core, js, dart, dartx } from 'dart_sdk'; 2 import { core, js, dart, dartx } from 'dart_sdk';
3 let dynamic__Toint = () => (dynamic__Toint = dart.constFn(dart.functionType(core .int, [dart.dynamic], [dart.dynamic])))(); 3 let dynamic__Toint = () => (dynamic__Toint = dart.constFn(dart.functionType(core .int, [dart.dynamic], [dart.dynamic])))();
4 let dynamic__Todynamic = () => (dynamic__Todynamic = dart.constFn(dart.functionT ype(dart.dynamic, [dart.dynamic], {y: core.String, z: dart.dynamic})))(); 4 let dynamic__Todynamic = () => (dynamic__Todynamic = dart.constFn(dart.functionT ype(dart.dynamic, [dart.dynamic], {y: core.String, z: dart.dynamic})))();
5 let StringToList = () => (StringToList = dart.constFn(dart.functionType(core.Lis t, [core.String])))(); 5 let StringToList = () => (StringToList = dart.constFn(dart.functionType(core.Lis t, [core.String])))();
6 let ListOfint = () => (ListOfint = dart.constFn(core.List$(core.int)))(); 6 let ListOfint = () => (ListOfint = dart.constFn(core.List$(core.int)))();
7 let dynamicTodynamic = () => (dynamicTodynamic = dart.constFn(dart.functionType( dart.dynamic, [dart.dynamic])))(); 7 let dynamicTodynamic = () => (dynamicTodynamic = dart.constFn(dart.functionType( dart.dynamic, [dart.dynamic])))();
8 let FnToListOfint = () => (FnToListOfint = dart.constFn(dart.functionType(ListOf int(), [dynamicTodynamic()])))(); 8 let FnToListOfint = () => (FnToListOfint = dart.constFn(dart.functionType(ListOf int(), [dynamicTodynamic()])))();
9 let MapOfMap$Map = () => (MapOfMap$Map = dart.constFn(core.Map$(core.Map, core.M ap)))(); 9 let MapOfMap$Map = () => (MapOfMap$Map = dart.constFn(core.Map$(core.Map, core.M ap)))();
10 let Foo = () => (Foo = dart.constFn(closure.Foo$()))(); 10 let Foo = () => (Foo = dart.constFn(closure.Foo$()))();
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 nullary_method: dart.definiteFunctionType(dart.dynamic, []), 108 nullary_method: dart.definiteFunctionType(dart.dynamic, []),
109 function_params: dart.definiteFunctionType(dart.dynamic, [dynamic__Toint() , dynamic__Todynamic(), closure.Callback]), 109 function_params: dart.definiteFunctionType(dart.dynamic, [dynamic__Toint() , dynamic__Todynamic(), closure.Callback]),
110 run: dart.definiteFunctionType(dart.dynamic, [core.List, core.String, Stri ngToList(), FnToListOfint()], {h: MapOfMap$Map()}) 110 run: dart.definiteFunctionType(dart.dynamic, [core.List, core.String, Stri ngToList(), FnToListOfint()], {h: MapOfMap$Map()})
111 }), 111 }),
112 statics: () => ({named_params: dart.definiteFunctionType(dart.dynamic, [dart .dynamic], {b: dart.dynamic, c: core.int})}), 112 statics: () => ({named_params: dart.definiteFunctionType(dart.dynamic, [dart .dynamic], {b: dart.dynamic, c: core.int})}),
113 names: ['named_params'] 113 names: ['named_params']
114 }); 114 });
115 return Foo; 115 return Foo;
116 }); 116 });
117 closure.Foo = Foo(); 117 closure.Foo = Foo();
118 /** @final {string} */ 118 dart.defineLazy(closure.Foo, {
119 closure.Foo.some_static_constant = "abc"; 119 get some_static_constant() {
120 /** @final {string} */ 120 return "abc";
121 closure.Foo.some_static_final = "abc"; 121 },
122 /** @type {string} */ 122 get some_static_final() {
123 closure.Foo.some_static_var = "abc"; 123 return "abc";
124 },
125 get some_static_var() {
126 return "abc";
127 },
128 set some_static_var(_) {}
129 });
124 closure.Bar = class Bar extends core.Object {}; 130 closure.Bar = class Bar extends core.Object {};
125 closure.Baz = class Baz extends dart.mixin(closure.Foo$(core.int), closure.Bar) { 131 closure.Baz = class Baz extends dart.mixin(closure.Foo$(core.int), closure.Bar) {
126 new(i: number) { 132 new(i: number) {
127 super.new(i, 123); 133 super.new(i, 123);
128 } 134 }
129 }; 135 };
130 dart.addSimpleTypeTests(closure.Baz); 136 dart.addSimpleTypeTests(closure.Baz);
131 closure.main = function(args): void { 137 closure.main = function(args): void {
132 }; 138 };
133 dart.fn(closure.main, dynamicTovoid()); 139 dart.fn(closure.main, dynamicTovoid());
134 dart.defineLazy(closure, { 140 dart.defineLazy(closure, {
135 get closure() { 141 get closure() {
136 return dart.fn((): core.Null => { 142 return dart.fn((): core.Null => {
137 return; 143 return;
138 }, VoidToNull()); 144 }, VoidToNull());
139 }, 145 },
140 set closure(_) {} 146 set closure(_) {},
147 get some_top_level_constant() {
148 return "abc";
149 },
150 get some_top_level_final() {
151 return "abc";
152 },
153 get some_top_level_var() {
154 return "abc";
155 },
156 set some_top_level_var(_) {}
141 }); 157 });
142 /** @final {string} */
143 closure.some_top_level_constant = "abc";
144 /** @final {string} */
145 closure.some_top_level_final = "abc";
146 /** @type {string} */
147 closure.some_top_level_var = "abc";
148 dart.trackLibraries("closure", {"closure.dart": closure}, null); 158 dart.trackLibraries("closure", {"closure.dart": closure}, null);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698