Chromium Code Reviews| Index: compiler/java/com/google/dart/compiler/resolver/TopLevelElementBuilder.java |
| =================================================================== |
| --- compiler/java/com/google/dart/compiler/resolver/TopLevelElementBuilder.java (revision 6897) |
| +++ compiler/java/com/google/dart/compiler/resolver/TopLevelElementBuilder.java (working copy) |
| @@ -76,30 +76,36 @@ |
| libraryPrefixElement.addLibrary(lib.getElement()); |
| // Fill library prefix scope. |
| for (DartUnit unit : lib.getUnits()) { |
| - fillInUnitScope(unit, listener, libraryPrefixElement.getScope()); |
| + fillInUnitScope(unit, listener, libraryPrefixElement.getScope(), false); |
| } |
| } else { |
| // Put the elements of the library in the scope. |
| for (DartUnit unit : lib.getUnits()) { |
| - fillInUnitScope(unit, listener, scope); |
| + fillInUnitScope(unit, listener, scope, false); |
| } |
| } |
| } |
| for (DartUnit unit : library.getUnits()) { |
| - fillInUnitScope(unit, listener, scope); |
| + fillInUnitScope(unit, listener, scope, true); |
| } |
| } |
| @VisibleForTesting |
| - void fillInUnitScope(DartUnit unit, DartCompilerListener listener, Scope scope) { |
| + void fillInUnitScope(DartUnit unit, DartCompilerListener listener, Scope scope, boolean includePrivate) { |
| for (DartNode node : unit.getTopLevelNodes()) { |
| if (node instanceof DartFieldDefinition) { |
| for (DartField field : ((DartFieldDefinition) node).getFields()) { |
| - declare(field.getElement(), listener, scope); |
| + Element element = field.getElement(); |
| + if (includePrivate || !element.getName().startsWith("_")) { |
|
scheglov
2012/04/24 18:32:11
May be use com.google.dart.compiler.ast.DartIdenti
Brian Wilkerson
2012/04/24 18:47:24
Done
|
| + declare(element, listener, scope); |
|
scheglov
2012/04/24 18:32:11
indentation
Brian Wilkerson
2012/04/24 18:47:24
Done
|
| + } |
| } |
| } else { |
| - declare((Element) node.getElement(), listener, scope); |
| + Element element = node.getElement(); |
| + if (includePrivate || !element.getName().startsWith("_")) { |
| + declare(element, listener, scope); |
| + } |
| } |
| } |
| } |