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

Side by Side Diff: pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart

Issue 2814453005: Merge CommonElements and BackendHelpers! (Closed)
Patch Set: comments and re-merge, take two 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 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.js_emitter.full_emitter; 5 library dart2js.js_emitter.full_emitter;
6 6
7 import 'dart:collection' show HashMap; 7 import 'dart:collection' show HashMap;
8 import 'dart:convert'; 8 import 'dart:convert';
9 9
10 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; 10 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames;
(...skipping 19 matching lines...) Expand all
30 MethodElement, 30 MethodElement,
31 TypedefElement, 31 TypedefElement,
32 VariableElement; 32 VariableElement;
33 import '../../elements/entities.dart'; 33 import '../../elements/entities.dart';
34 import '../../hash/sha1.dart' show Hasher; 34 import '../../hash/sha1.dart' show Hasher;
35 import '../../io/code_output.dart'; 35 import '../../io/code_output.dart';
36 import '../../io/location_provider.dart' show LocationCollector; 36 import '../../io/location_provider.dart' show LocationCollector;
37 import '../../io/source_map_builder.dart' show SourceMapBuilder; 37 import '../../io/source_map_builder.dart' show SourceMapBuilder;
38 import '../../js/js.dart' as jsAst; 38 import '../../js/js.dart' as jsAst;
39 import '../../js/js.dart' show js; 39 import '../../js/js.dart' show js;
40 import '../../js_backend/backend_helpers.dart' show BackendHelpers;
41 import '../../js_backend/js_backend.dart' 40 import '../../js_backend/js_backend.dart'
42 show 41 show
43 ConstantEmitter, 42 ConstantEmitter,
44 JavaScriptBackend, 43 JavaScriptBackend,
45 JavaScriptConstantCompiler, 44 JavaScriptConstantCompiler,
46 Namer, 45 Namer,
47 SetterName, 46 SetterName,
48 TypeVariableCodegenAnalysis; 47 TypeVariableCodegenAnalysis;
49 import '../../universe/call_structure.dart' show CallStructure; 48 import '../../universe/call_structure.dart' show CallStructure;
50 import '../../universe/selector.dart' show Selector; 49 import '../../universe/selector.dart' show Selector;
(...skipping 769 matching lines...) Expand 10 before | Expand all | Expand 10 after
820 generateEmbeddedGlobalAccess(embeddedNames.ALL_CLASSES); 819 generateEmbeddedGlobalAccess(embeddedNames.ALL_CLASSES);
821 jsAst.Expression getTypeFromNameAccess = 820 jsAst.Expression getTypeFromNameAccess =
822 generateEmbeddedGlobalAccess(embeddedNames.GET_TYPE_FROM_NAME); 821 generateEmbeddedGlobalAccess(embeddedNames.GET_TYPE_FROM_NAME);
823 jsAst.Expression interceptorsByTagAccess = 822 jsAst.Expression interceptorsByTagAccess =
824 generateEmbeddedGlobalAccess(embeddedNames.INTERCEPTORS_BY_TAG); 823 generateEmbeddedGlobalAccess(embeddedNames.INTERCEPTORS_BY_TAG);
825 jsAst.Expression leafTagsAccess = 824 jsAst.Expression leafTagsAccess =
826 generateEmbeddedGlobalAccess(embeddedNames.LEAF_TAGS); 825 generateEmbeddedGlobalAccess(embeddedNames.LEAF_TAGS);
827 jsAst.Expression finishedClassesAccess = 826 jsAst.Expression finishedClassesAccess =
828 generateEmbeddedGlobalAccess(embeddedNames.FINISHED_CLASSES); 827 generateEmbeddedGlobalAccess(embeddedNames.FINISHED_CLASSES);
829 jsAst.Expression cyclicThrow = 828 jsAst.Expression cyclicThrow =
830 staticFunctionAccess(backend.helpers.cyclicThrowHelper); 829 staticFunctionAccess(backend.commonElements.cyclicThrowHelper);
831 jsAst.Expression laziesAccess = 830 jsAst.Expression laziesAccess =
832 generateEmbeddedGlobalAccess(embeddedNames.LAZIES); 831 generateEmbeddedGlobalAccess(embeddedNames.LAZIES);
833 832
834 return js.statement( 833 return js.statement(
835 ''' 834 '''
836 function init() { 835 function init() {
837 $isolatePropertiesName = Object.create(null); 836 $isolatePropertiesName = Object.create(null);
838 #allClasses = map(); 837 #allClasses = map();
839 #getTypeFromName = function(name) {return #allClasses[name];}; 838 #getTypeFromName = function(name) {return #allClasses[name];};
840 #interceptorsByTag = map(); 839 #interceptorsByTag = map();
(...skipping 1088 matching lines...) Expand 10 before | Expand all | Expand 10 after
1929 // data. 1928 // data.
1930 mapping["_comment"] = "This mapping shows which compiled `.js` files are " 1929 mapping["_comment"] = "This mapping shows which compiled `.js` files are "
1931 "needed for a given deferred library import."; 1930 "needed for a given deferred library import.";
1932 mapping.addAll(compiler.deferredLoadTask.computeDeferredMap()); 1931 mapping.addAll(compiler.deferredLoadTask.computeDeferredMap());
1933 compiler.outputProvider( 1932 compiler.outputProvider(
1934 compiler.options.deferredMapUri.path, '', OutputType.info) 1933 compiler.options.deferredMapUri.path, '', OutputType.info)
1935 ..add(const JsonEncoder.withIndent(" ").convert(mapping)) 1934 ..add(const JsonEncoder.withIndent(" ").convert(mapping))
1936 ..close(); 1935 ..close();
1937 } 1936 }
1938 } 1937 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698