KT-1673 Respect formatter settings in the completion list - apply standard renderer
#KT-1673 fixed
This commit is contained in:
@@ -249,6 +249,12 @@ public class DescriptorRenderer implements Renderer<DeclarationDescriptor> {
|
|||||||
return stringBuilder.toString();
|
return stringBuilder.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String renderFunctionParameters(@NotNull FunctionDescriptor functionDescriptor) {
|
||||||
|
StringBuilder stringBuilder = new StringBuilder();
|
||||||
|
rootVisitor.renderValueParameters(functionDescriptor, stringBuilder);
|
||||||
|
return stringBuilder.toString();
|
||||||
|
}
|
||||||
|
|
||||||
protected boolean shouldRenderDefinedIn() {
|
protected boolean shouldRenderDefinedIn() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,9 +20,7 @@ import com.google.common.collect.Lists;
|
|||||||
import com.intellij.codeInsight.lookup.LookupElement;
|
import com.intellij.codeInsight.lookup.LookupElement;
|
||||||
import com.intellij.codeInsight.lookup.LookupElementBuilder;
|
import com.intellij.codeInsight.lookup.LookupElementBuilder;
|
||||||
import com.intellij.openapi.util.Iconable;
|
import com.intellij.openapi.util.Iconable;
|
||||||
import com.intellij.openapi.util.text.StringUtil;
|
|
||||||
import com.intellij.psi.PsiElement;
|
import com.intellij.psi.PsiElement;
|
||||||
import com.intellij.util.Function;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.jetbrains.jet.lang.descriptors.*;
|
import org.jetbrains.jet.lang.descriptors.*;
|
||||||
@@ -64,14 +62,7 @@ public final class DescriptorLookupConverter {
|
|||||||
FunctionDescriptor functionDescriptor = (FunctionDescriptor) descriptor;
|
FunctionDescriptor functionDescriptor = (FunctionDescriptor) descriptor;
|
||||||
JetType returnType = functionDescriptor.getReturnType();
|
JetType returnType = functionDescriptor.getReturnType();
|
||||||
typeText = DescriptorRenderer.TEXT.renderType(returnType);
|
typeText = DescriptorRenderer.TEXT.renderType(returnType);
|
||||||
|
tailText = DescriptorRenderer.TEXT.renderFunctionParameters(functionDescriptor);
|
||||||
tailText = "(" + StringUtil.join(functionDescriptor.getValueParameters(), new Function<ValueParameterDescriptor, String>() {
|
|
||||||
@Override
|
|
||||||
public String fun(ValueParameterDescriptor valueParameterDescriptor) {
|
|
||||||
return valueParameterDescriptor.getName() + ":" +
|
|
||||||
DescriptorRenderer.TEXT.renderType(valueParameterDescriptor.getType());
|
|
||||||
}
|
|
||||||
}, ",") + ")";
|
|
||||||
|
|
||||||
boolean extensionFunction = functionDescriptor.getReceiverParameter().exists();
|
boolean extensionFunction = functionDescriptor.getReceiverParameter().exists();
|
||||||
DeclarationDescriptor containingDeclaration = descriptor.getContainingDeclaration();
|
DeclarationDescriptor containingDeclaration = descriptor.getContainingDeclaration();
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fun test(a: Int) {}
|
||||||
|
|
||||||
|
fun some() {
|
||||||
|
tes<caret>
|
||||||
|
}
|
||||||
|
|
||||||
|
// EXIST: test~(a : jet.Int)
|
||||||
@@ -81,6 +81,10 @@ public class JetBasicCompletionTest extends JetCompletionTestBase {
|
|||||||
doTest();
|
doTest();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testFunctionCompletionFormatting() {
|
||||||
|
doTest();
|
||||||
|
}
|
||||||
|
|
||||||
public void testInCallExpression() {
|
public void testInCallExpression() {
|
||||||
doTest();
|
doTest();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user