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

Side by Side Diff: pkg/compiler/lib/src/js_backend/constant_handler_javascript.dart

Issue 2000323006: Make CompilerTask independent of compiler. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 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) 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 part of js_backend; 5 part of js_backend;
6 6
7 /// [ConstantCompilerTask] for compilation of constants for the JavaScript 7 /// [ConstantCompilerTask] for compilation of constants for the JavaScript
8 /// backend. 8 /// backend.
9 /// 9 ///
10 /// Since this task needs to distinguish between frontend and backend constants 10 /// Since this task needs to distinguish between frontend and backend constants
11 /// the actual compilation of the constants is forwarded to a 11 /// the actual compilation of the constants is forwarded to a
12 /// [DartConstantCompiler] for the frontend interpretation of the constants and 12 /// [DartConstantCompiler] for the frontend interpretation of the constants and
13 /// to a [JavaScriptConstantCompiler] for the backend interpretation. 13 /// to a [JavaScriptConstantCompiler] for the backend interpretation.
14 class JavaScriptConstantTask extends ConstantCompilerTask { 14 class JavaScriptConstantTask extends ConstantCompilerTask {
15 DartConstantCompiler dartConstantCompiler; 15 DartConstantCompiler dartConstantCompiler;
16 JavaScriptConstantCompiler jsConstantCompiler; 16 JavaScriptConstantCompiler jsConstantCompiler;
17 17
18 JavaScriptConstantTask(Compiler compiler) 18 JavaScriptConstantTask(Compiler compiler)
19 : this.dartConstantCompiler = new DartConstantCompiler(compiler), 19 : this.dartConstantCompiler = new DartConstantCompiler(compiler),
20 this.jsConstantCompiler = new JavaScriptConstantCompiler(compiler), 20 this.jsConstantCompiler = new JavaScriptConstantCompiler(compiler),
21 super(compiler); 21 super(compiler.measurer);
22 22
23 String get name => 'ConstantHandler'; 23 String get name => 'ConstantHandler';
24 24
25 @override 25 @override
26 ConstantSystem get constantSystem => dartConstantCompiler.constantSystem; 26 ConstantSystem get constantSystem => dartConstantCompiler.constantSystem;
27 27
28 @override 28 @override
29 bool hasConstantValue(ConstantExpression expression) { 29 bool hasConstantValue(ConstantExpression expression) {
30 return dartConstantCompiler.hasConstantValue(expression); 30 return dartConstantCompiler.hasConstantValue(expression);
31 } 31 }
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 // TODO(ahe): This doesn't belong here. Rename this class and generalize. 308 // TODO(ahe): This doesn't belong here. Rename this class and generalize.
309 var closureClassMap = constants 309 var closureClassMap = constants
310 .compiler.closureToClassMapper.closureMappingCache 310 .compiler.closureToClassMapper.closureMappingCache
311 .remove(node); 311 .remove(node);
312 if (closureClassMap != null) { 312 if (closureClassMap != null) {
313 closureClassMap 313 closureClassMap
314 .removeMyselfFrom(constants.compiler.enqueuer.codegen.universe); 314 .removeMyselfFrom(constants.compiler.enqueuer.codegen.universe);
315 } 315 }
316 } 316 }
317 } 317 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698