Change Signature: Fix primary constructor processing
This commit is contained in:
+1
-1
@@ -182,7 +182,7 @@ public class JetFunctionDefinitionUsage<T extends PsiElement> extends JetUsageIn
|
|||||||
boolean returnTypeIsNeeded = (changeInfo.isRefactoringTarget(originalFunctionDescriptor)
|
boolean returnTypeIsNeeded = (changeInfo.isRefactoringTarget(originalFunctionDescriptor)
|
||||||
|| !(function instanceof JetFunctionLiteral)
|
|| !(function instanceof JetFunctionLiteral)
|
||||||
|| function.getTypeReference() != null) &&
|
|| function.getTypeReference() != null) &&
|
||||||
!(function instanceof JetSecondaryConstructor);
|
!(function instanceof JetConstructor);
|
||||||
if (changeInfo.isReturnTypeChanged() && returnTypeIsNeeded) {
|
if (changeInfo.isReturnTypeChanged() && returnTypeIsNeeded) {
|
||||||
function.setTypeReference(null);
|
function.setTypeReference(null);
|
||||||
String returnTypeText = changeInfo.renderReturnType((JetFunctionDefinitionUsage<PsiElement>) this);
|
String returnTypeText = changeInfo.renderReturnType((JetFunctionDefinitionUsage<PsiElement>) this);
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
class A(n: Int) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fun test() {
|
||||||
|
<caret>A(1)
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
class A() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fun test() {
|
||||||
|
<caret>A()
|
||||||
|
}
|
||||||
+10
@@ -939,6 +939,16 @@ public class JetChangeSignatureTest extends KotlinCodeInsightTestCase {
|
|||||||
doTest(changeInfo);
|
doTest(changeInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testPrimaryConstructorByRef() throws Exception {
|
||||||
|
JetChangeInfo changeInfo = getChangeInfo();
|
||||||
|
JetPsiFactory psiFactory = new JetPsiFactory(getProject());
|
||||||
|
JetParameterInfo newParameter = new JetParameterInfo(changeInfo.getMethodDescriptor().getBaseDescriptor(),
|
||||||
|
-1, "n", KotlinBuiltIns.getInstance().getIntType(), null,
|
||||||
|
psiFactory.createExpression("1"), JetValVar.None, null);
|
||||||
|
changeInfo.addParameter(newParameter);
|
||||||
|
doTest(changeInfo);
|
||||||
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
protected String getTestDataPath() {
|
protected String getTestDataPath() {
|
||||||
|
|||||||
Reference in New Issue
Block a user