| 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.
|
|
|