IDEA-156628 QuickDoc does not showing array initializers correctly

This commit is contained in:
Dmitry Batrak
2016-06-09 13:10:53 +03:00
parent edc2d90e44
commit 8e3e178333
4 changed files with 11 additions and 5 deletions
@@ -50,7 +50,6 @@ import com.intellij.psi.util.PsiFormatUtilBase;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.util.ArrayUtil;
import com.intellij.util.ArrayUtilRt;
import com.intellij.util.Function;
import com.intellij.util.IncorrectOperationException;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.xml.util.XmlStringUtil;
@@ -2297,13 +2296,12 @@ public class JavaDocInfoGenerator {
if (type != null) {
generateType(myBuffer, type, expression);
}
myBuffer.append("(");
expression.acceptChildren(this);
myBuffer.append(")");
}
@Override
public void visitExpressionList(PsiExpressionList list) {
myBuffer.append("(");
String separator = ", ";
PsiExpression[] expressions = list.getExpressions();
for (PsiExpression expression : expressions) {
@@ -2313,13 +2311,13 @@ public class JavaDocInfoGenerator {
if (expressions.length > 0) {
myBuffer.setLength(myBuffer.length() - separator.length());
}
myBuffer.append(")");
}
@Override
public void visitMethodCallExpression(PsiMethodCallExpression expression) {
myBuffer.append(StringUtil.escapeXml(expression.getMethodExpression().getText())).append("(");
myBuffer.append(StringUtil.escapeXml(expression.getMethodExpression().getText()));
expression.getArgumentList().accept(this);
myBuffer.append(")");
}
@Override
@@ -0,0 +1 @@
<html><head><base href="placeholder"> <style type="text/css"> #error { background-color: #eeeeee; margin-bottom: 10px; } p { margin: 5px 0; } </style></head><body><small><b><a href="psi_element://A"><code>A</code></a></b></small><PRE>public static int[] <b>x = new int[]{1, 2, 3}</b></PRE></body></html>
@@ -0,0 +1,3 @@
class A {
public static int[] x = new int[]{1, 2, 3};
}
@@ -168,6 +168,10 @@ public class JavaDocInfoGeneratorTest extends CodeInsightTestCase {
doTestField();
}
public void testFieldInitializedWithArray() throws Exception {
doTestField();
}
public void testEnumConstantOrdinal() throws Exception {
PsiClass psiClass = getTestClass();
PsiField field = psiClass.getFields() [0];