From c4695e9e301ed97ed32defb1203bc7afce54126c Mon Sep 17 00:00:00 2001 From: anna Date: Tue, 9 Oct 2012 13:07:10 +0200 Subject: [PATCH] inline: show conflict when method is used in method reference --- .../intellij/refactoring/inline/InlineMethodProcessor.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java b/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java index 2c11c6b4d25d..0503ab380e50 100644 --- a/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java @@ -191,6 +191,9 @@ public class InlineMethodProcessor extends BaseRefactoringProcessor { if (element instanceof PsiDocMethodOrFieldRef && !PsiTreeUtil.isAncestor(myMethod, element, false)) { conflicts.putValue(element, "Inlined method is used in javadoc"); } + if (element instanceof PsiMethodReferenceExpression) { + conflicts.putValue(element, "Inlined method is used in method reference"); + } } } @@ -426,6 +429,7 @@ public class InlineMethodProcessor extends BaseRefactoringProcessor { PsiReferenceExpression[] refs = refExprList.toArray(new PsiReferenceExpression[refExprList.size()]); refs = addBracesWhenNeeded(refs); for (PsiReferenceExpression ref : refs) { + if (ref instanceof PsiMethodReferenceExpression) continue; inlineMethodCall(ref); } for (PsiElement psiElement : imports2Delete) {