keep comments on split declaration inside for loop

This commit is contained in:
Anna Kozlova
2018-06-25 17:37:05 +03:00
parent 8a3e53d414
commit e2e3359a09
3 changed files with 5 additions and 2 deletions

View File

@@ -31,6 +31,7 @@ import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.util.PsiUtil;
import com.intellij.refactoring.util.RefactoringUtil;
import com.intellij.util.IncorrectOperationException;
import com.siyeh.ig.psiutils.CommentTracker;
import org.jetbrains.annotations.NotNull;
/**
@@ -171,7 +172,7 @@ public class SplitDeclarationAction extends PsiElementBaseIntentionAction {
}
final PsiElement parent = block.getParent();
PsiExpressionStatement replaced = (PsiExpressionStatement)decl.replace(statement);
PsiExpressionStatement replaced = (PsiExpressionStatement)new CommentTracker().replaceAndRestoreComments(decl, statement);
if (!(parent instanceof PsiCodeBlock)) {
final PsiBlockStatement blockStatement =
(PsiBlockStatement)JavaPsiFacade.getElementFactory(project).createStatementFromText("{}", block);

View File

@@ -1,6 +1,7 @@
// "Split into declaration and assignment" "true"
class Test {
{
//c1
int i;
for (i = 0; i<10; i++) {
System.out.println();

View File

@@ -1,7 +1,8 @@
// "Split into declaration and assignment" "true"
class Test {
{
for (int i<caret>=0; i<10; i++) {
for (int i<caret>//c1
=0; i<10; i++) {
System.out.println();
}
}