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

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

Issue 2935663002: Remove Compiler.commonElements (Closed)
Patch Set: Remove Compiler._commonElements 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 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 part of dart2js.js_emitter.full_emitter; 5 part of dart2js.js_emitter.full_emitter;
6 6
7 // TODO(ahe): Share these with js_helper.dart. 7 // TODO(ahe): Share these with js_helper.dart.
8 const FUNCTION_INDEX = 0; 8 const FUNCTION_INDEX = 0;
9 const NAME_INDEX = 1; 9 const NAME_INDEX = 1;
10 const CALL_NAME_INDEX = 2; 10 const CALL_NAME_INDEX = 2;
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 'allClasses': allClassesAccess, 125 'allClasses': allClassesAccess,
126 'debugFastObjects': DEBUG_FAST_OBJECTS, 126 'debugFastObjects': DEBUG_FAST_OBJECTS,
127 'isTreeShakingDisabled': backend.mirrorsData.isTreeShakingDisabled, 127 'isTreeShakingDisabled': backend.mirrorsData.isTreeShakingDisabled,
128 'precompiled': precompiledAccess, 128 'precompiled': precompiledAccess,
129 'finishedClassesAccess': finishedClassesAccess, 129 'finishedClassesAccess': finishedClassesAccess,
130 'needsMixinSupport': emitter.needsMixinSupport, 130 'needsMixinSupport': emitter.needsMixinSupport,
131 'needsNativeSupport': program.needsNativeSupport, 131 'needsNativeSupport': program.needsNativeSupport,
132 'enabledJsInterop': backend.nativeBasicData.isJsInteropUsed, 132 'enabledJsInterop': backend.nativeBasicData.isJsInteropUsed,
133 'jsInteropBoostrap': backend.jsInteropAnalysis.buildJsInteropBootstrap(), 133 'jsInteropBoostrap': backend.jsInteropAnalysis.buildJsInteropBootstrap(),
134 'isInterceptorClass': 134 'isInterceptorClass':
135 namer.operatorIs(compiler.commonElements.jsInterceptorClass), 135 namer.operatorIs(closedWorld.commonElements.jsInterceptorClass),
136 'isObject': namer.operatorIs(compiler.commonElements.objectClass), 136 'isObject': namer.operatorIs(closedWorld.commonElements.objectClass),
137 'specProperty': js.string(namer.nativeSpecProperty), 137 'specProperty': js.string(namer.nativeSpecProperty),
138 'trivialNsmHandlers': emitter.buildTrivialNsmHandlers(), 138 'trivialNsmHandlers': emitter.buildTrivialNsmHandlers(),
139 'hasRetainedMetadata': backend.mirrorsData.hasRetainedMetadata, 139 'hasRetainedMetadata': backend.mirrorsData.hasRetainedMetadata,
140 'types': typesAccess, 140 'types': typesAccess,
141 'objectClassName': js.quoteName(namer.runtimeTypeName( 141 'objectClassName': js.quoteName(namer.runtimeTypeName(
142 // ignore: UNNECESSARY_CAST 142 // ignore: UNNECESSARY_CAST
143 compiler.commonElements.objectClass as Entity)), 143 closedWorld.commonElements.objectClass as Entity)),
144 'needsStructuredMemberInfo': emitter.needsStructuredMemberInfo, 144 'needsStructuredMemberInfo': emitter.needsStructuredMemberInfo,
145 'usesMangledNames': compiler.commonElements.mirrorsLibrary != null || 145 'usesMangledNames': closedWorld.commonElements.mirrorsLibrary != null ||
146 closedWorld.backendUsage.isFunctionApplyUsed, 146 closedWorld.backendUsage.isFunctionApplyUsed,
147 'tearOffCode': buildTearOffCode( 147 'tearOffCode': buildTearOffCode(
148 compiler.options, emitter, namer, compiler.commonElements), 148 compiler.options, emitter, namer, closedWorld.commonElements),
149 'nativeInfoHandler': nativeInfoHandler, 149 'nativeInfoHandler': nativeInfoHandler,
150 'operatorIsPrefix': js.string(namer.operatorIsPrefix), 150 'operatorIsPrefix': js.string(namer.operatorIsPrefix),
151 'deferredActionString': js.string(namer.deferredAction) 151 'deferredActionString': js.string(namer.deferredAction)
152 }; 152 };
153 String skeleton = ''' 153 String skeleton = '''
154 function $setupProgramName(programData, typesOffset) { 154 function $setupProgramName(programData, typesOffset) {
155 "use strict"; 155 "use strict";
156 if (#needsClassSupport) { 156 if (#needsClassSupport) {
157 157
158 function generateAccessor(fieldDescriptor, accessors, cls) { 158 function generateAccessor(fieldDescriptor, accessors, cls) {
(...skipping 690 matching lines...) Expand 10 before | Expand all | Expand 10 after
849 (function() { 849 (function() {
850 var result = $array[$index]; 850 var result = $array[$index];
851 if ($check) { 851 if ($check) {
852 throw new Error( 852 throw new Error(
853 name + ": expected value of type \'$type\' at index " + ($index) + 853 name + ": expected value of type \'$type\' at index " + ($index) +
854 " but got " + (typeof result)); 854 " but got " + (typeof result));
855 } 855 }
856 return result; 856 return result;
857 })()'''; 857 })()''';
858 } 858 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698