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

Unified Diff: editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/internal/corext/refactoring/rename/RenameLocalVariableProcessor.java

Issue 10915031: Issue 4796. Support for renaming named parameters in invocations (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 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: editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/internal/corext/refactoring/rename/RenameLocalVariableProcessor.java
diff --git a/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/internal/corext/refactoring/rename/RenameLocalVariableProcessor.java b/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/internal/corext/refactoring/rename/RenameLocalVariableProcessor.java
index e5d05e2f69ba802cb3ce00f0909f5fcf58b60053..2153d7d9b4a5070c33cdd33197c9063541ea0229 100644
--- a/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/internal/corext/refactoring/rename/RenameLocalVariableProcessor.java
+++ b/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/internal/corext/refactoring/rename/RenameLocalVariableProcessor.java
@@ -338,8 +338,10 @@ public class RenameLocalVariableProcessor extends DartRenameProcessor {
return analyzePossibleConflicts(new FunctionLocalElement(variable), newName, pm);
}
- private void createEdits() {
- List<TextEdit> allRenameEdits = getAllRenameEdits();
+ private void createEdits() throws CoreException {
+ List<TextEdit> allRenameEdits = Lists.newArrayList();
+ allRenameEdits.addAll(getLocalRenameEdits());
+ allRenameEdits.addAll(getNamedParameterRenameEdits());
change = new CompilationUnitChange(
RefactoringCoreMessages.RenameLocalVariableProcessor_name,
@@ -360,7 +362,7 @@ public class RenameLocalVariableProcessor extends DartRenameProcessor {
return new ReplaceEdit(offset, oldName.length(), newName);
}
- private List<TextEdit> getAllRenameEdits() {
+ private List<TextEdit> getLocalRenameEdits() {
final List<TextEdit> edits = Lists.newArrayList();
DartNode enclosingMethod = ASTNodes.getParent(variableNode, DartMethodDefinition.class);
enclosingMethod.accept(new ASTVisitor<Void>() {
@@ -377,6 +379,19 @@ public class RenameLocalVariableProcessor extends DartRenameProcessor {
return edits;
}
+ private List<TextEdit> getNamedParameterRenameEdits() throws CoreException {
+ List<TextEdit> edits = Lists.newArrayList();
+ if (variable.isParameter()) {
+ List<SearchMatch> references = RenameAnalyzeUtil.getReferences(variable, null);
+ for (SearchMatch match : references) {
+ int offset = match.getSourceRange().getOffset();
+ TextEdit edit = createRenameEdit(offset);
+ edits.add(edit);
+ }
+ }
+ return edits;
+ }
+
private void initAST() throws DartModelException {
unitNode = DartCompilerUtilities.resolveUnit(unit);
// Prepare variable Node.

Powered by Google App Engine
This is Rietveld 408576698