inline redundant array: remove tailing commas (IDEA-67212)

This commit is contained in:
anna
2011-03-31 13:18:23 +02:00
parent e2e5f321ab
commit 3507e39732
4 changed files with 26 additions and 0 deletions
@@ -196,6 +196,12 @@ public class InlineUtil {
if (nextSibling.getNode().getElementType() == JavaTokenType.RBRACE) break;
lastInitializerSibling = nextSibling;
}
if (lastInitializerSibling instanceof PsiWhiteSpace) {
lastInitializerSibling = PsiTreeUtil.skipSiblingsBackward(lastInitializerSibling, PsiWhiteSpace.class);
}
if (lastInitializerSibling.getNode().getElementType() == JavaTokenType.COMMA) {
lastInitializerSibling = lastInitializerSibling.getPrevSibling();
}
argumentList.addRange(initializers[0], lastInitializerSibling);
}
args[args.length - 1].delete();
@@ -0,0 +1,9 @@
public class Main {
public static void main(String[] args) {
display(new S<caret>tring[]{
"hi",
});
}
private static void display(String... messages) { }
}
@@ -0,0 +1,7 @@
public class Main {
public static void main(String[] args) {
display("hi");
}
private static void display(String... messages) { }
}
@@ -55,6 +55,10 @@ public class RedundantArray4VarargsCallInspectionTest extends UsefulTestCase {
doTest();
}
public void testRemoveTailingCommas() {
doTest();
}
private void doTest() {
myFixture.configureByFile(getTestName(false) + ".java");
myFixture.launchAction(assertOneElement(myFixture.filterAvailableIntentions(InspectionsBundle.message("inspection.redundant.array.creation.quickfix"))));