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

Unified Diff: sdk/lib/_internal/compiler/implementation/mirror_renamer/renamer.dart

Issue 23593002: Only emit members in mirror helper symbolsmap. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/implementation/mirror_renamer/renamer.dart
diff --git a/sdk/lib/_internal/compiler/implementation/mirror_renamer/renamer.dart b/sdk/lib/_internal/compiler/implementation/mirror_renamer/renamer.dart
index 5be6d776072731d0d87bdde2e1d6208966279f7a..692e4d096ac4477c5476e0a1728ded323592299c 100644
--- a/sdk/lib/_internal/compiler/implementation/mirror_renamer/renamer.dart
+++ b/sdk/lib/_internal/compiler/implementation/mirror_renamer/renamer.dart
@@ -47,20 +47,20 @@ class MirrorRenamer {
* code to mangled names appearing in output code, and [topLevelNodes] should
* contain all the toplevel ast nodes that will be emitted in the output.
*/
- void addRenames(Map<Node, String> renames, List<Node> topLevelNodes) {
+ void addRenames(Map<Node, String> renames, List<Node> topLevelNodes,
+ PlaceholderCollector placeholderCollector) {
Node parse(String text) {
Token tokens = compiler.scanner.tokenize(text);
return compiler.parser.parseCompilationUnit(tokens);
}
- // Add toplevel map containing all renames.
+ // Add toplevel map containing all renames of members.
symbols = new Map<String, SourceString>();
- for (Node node in renames.keys) {
- Identifier identifier = node.asIdentifier();
- if (identifier != null) {
- symbols.putIfAbsent(renames[node], () => identifier.source);
- }
+ for (Set<Identifier> s in placeholderCollector.memberPlaceholders.values) {
+ // All members in a set have the same name so we only need to look at one.
+ Identifier sampleNode = s.first;
+ symbols.putIfAbsent(renames[sampleNode], () => sampleNode.source);
}
Identifier symbolsMapIdentifier =

Powered by Google App Engine
This is Rietveld 408576698