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

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

Issue 2543753004: Move processing of instance members from ResolutionEnqueuer to ResolutionWorldBuilderImpl (Closed)
Patch Set: Updated cf. comments. Created 4 years 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
« no previous file with comments | « pkg/compiler/lib/src/util/enumset.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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.world; 5 library dart2js.world;
6 6
7 import 'cache_strategy.dart'; 7 import 'cache_strategy.dart';
8 import 'closure.dart' show SynthesizedCallMethodElementX; 8 import 'closure.dart' show SynthesizedCallMethodElementX;
9 import 'common/backend_api.dart' show BackendClasses; 9 import 'common/backend_api.dart' show BackendClasses;
10 import 'common.dart'; 10 import 'common.dart';
(...skipping 1106 matching lines...) Expand 10 before | Expand all | Expand 10 after
1117 // E.g. node.firstChild depends on parentNode.removeBefore(n1, n2). 1117 // E.g. node.firstChild depends on parentNode.removeBefore(n1, n2).
1118 // TODO(sra): Refine the effect classification so that native effects are 1118 // TODO(sra): Refine the effect classification so that native effects are
1119 // distinct from ordinary Dart effects. 1119 // distinct from ordinary Dart effects.
1120 return false; 1120 return false;
1121 } 1121 }
1122 1122
1123 if (element.isFinal || element.isConst) { 1123 if (element.isFinal || element.isConst) {
1124 return true; 1124 return true;
1125 } 1125 }
1126 if (element.isInstanceMember) { 1126 if (element.isInstanceMember) {
1127 return !resolverWorld.hasInvokedSetter(element, this) && 1127 return !resolverWorld.hasInvokedSetter(element) &&
1128 !resolverWorld.fieldSetters.contains(element); 1128 !resolverWorld.fieldSetters.contains(element);
1129 } 1129 }
1130 return false; 1130 return false;
1131 } 1131 }
1132 1132
1133 SideEffects getSideEffectsOfElement(Element element) { 1133 SideEffects getSideEffectsOfElement(Element element) {
1134 // The type inferrer (where the side effects are being computed), 1134 // The type inferrer (where the side effects are being computed),
1135 // does not see generative constructor bodies because they are 1135 // does not see generative constructor bodies because they are
1136 // created by the backend. Also, it does not make any distinction 1136 // created by the backend. Also, it does not make any distinction
1137 // between a constructor and its body for side effects. This 1137 // between a constructor and its body for side effects. This
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
1219 /// Only the class itself is included. 1219 /// Only the class itself is included.
1220 EXACT, 1220 EXACT,
1221 1221
1222 /// The class and all subclasses (transitively) are included. 1222 /// The class and all subclasses (transitively) are included.
1223 SUBCLASS, 1223 SUBCLASS,
1224 1224
1225 /// The class and all classes that implement or subclass it (transitively) 1225 /// The class and all classes that implement or subclass it (transitively)
1226 /// are included. 1226 /// are included.
1227 SUBTYPE, 1227 SUBTYPE,
1228 } 1228 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/util/enumset.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698