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

Side by Side Diff: pkg/compiler/lib/src/compile_time_constants.dart

Issue 2023863002: Register deserialized lazy statics. (Closed) Base URL: https://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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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.compile_time_constant_evaluator; 5 library dart2js.compile_time_constant_evaluator;
6 6
7 import 'common.dart'; 7 import 'common.dart';
8 import 'common/resolution.dart' show Resolution; 8 import 'common/resolution.dart' show Resolution;
9 import 'common/tasks.dart' show CompilerTask, Measurer; 9 import 'common/tasks.dart' show CompilerTask, Measurer;
10 import 'compiler.dart' show Compiler; 10 import 'compiler.dart' show Compiler;
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 /// Depending on implementation, the constant might be stored in [elements]. 97 /// Depending on implementation, the constant might be stored in [elements].
98 ConstantValue getConstantValueForNode(Node node, TreeElements elements); 98 ConstantValue getConstantValueForNode(Node node, TreeElements elements);
99 99
100 /// Returns the compile-time constant associated with [node]. 100 /// Returns the compile-time constant associated with [node].
101 /// 101 ///
102 /// Depending on implementation, the constant might be stored in [elements]. 102 /// Depending on implementation, the constant might be stored in [elements].
103 ConstantExpression getConstantForNode(Node node, TreeElements elements); 103 ConstantExpression getConstantForNode(Node node, TreeElements elements);
104 104
105 /// Returns the compile-time constant value of [metadata]. 105 /// Returns the compile-time constant value of [metadata].
106 ConstantValue getConstantValueForMetadata(MetadataAnnotation metadata); 106 ConstantValue getConstantValueForMetadata(MetadataAnnotation metadata);
107
108 /// Register that [element] needs lazy initialization.
109 void registerLazyStatic(FieldElement element);
107 } 110 }
108 111
109 /// Interface for the task that compiles the constant environments for the 112 /// Interface for the task that compiles the constant environments for the
110 /// frontend and backend interpretation of compile-time constants. 113 /// frontend and backend interpretation of compile-time constants.
111 abstract class ConstantCompilerTask extends CompilerTask 114 abstract class ConstantCompilerTask extends CompilerTask
112 implements ConstantCompiler { 115 implements ConstantCompiler {
113 ConstantCompilerTask(Measurer measurer) : super(measurer); 116 ConstantCompilerTask(Measurer measurer) : super(measurer);
114 117
115 /// Copy all cached constant values from [task]. 118 /// Copy all cached constant values from [task].
116 /// 119 ///
(...skipping 1246 matching lines...) Expand 10 before | Expand all | Expand 10 after
1363 class _CompilerEnvironment implements Environment { 1366 class _CompilerEnvironment implements Environment {
1364 final Compiler compiler; 1367 final Compiler compiler;
1365 1368
1366 _CompilerEnvironment(this.compiler); 1369 _CompilerEnvironment(this.compiler);
1367 1370
1368 @override 1371 @override
1369 String readFromEnvironment(String name) { 1372 String readFromEnvironment(String name) {
1370 return compiler.fromEnvironment(name); 1373 return compiler.fromEnvironment(name);
1371 } 1374 }
1372 } 1375 }
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/dart_backend/backend.dart » ('j') | pkg/compiler/lib/src/serialization/system.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698