Use DescriptorToDeclarationUtil to get function declaration in JetChangeSignature
This commit is contained in:
@@ -32,6 +32,7 @@ import java.util.*
|
||||
import org.jetbrains.jet.lang.descriptors.CallableMemberDescriptor.Kind.*
|
||||
import org.jetbrains.jet.lang.resolve.BindingContextUtils.*
|
||||
import org.jetbrains.annotations.TestOnly
|
||||
import org.jetbrains.jet.plugin.codeInsight.DescriptorToDeclarationUtil
|
||||
|
||||
public trait JetChangeSignatureConfiguration {
|
||||
fun configure(changeSignatureData: JetChangeSignatureData, bindingContext: BindingContext)
|
||||
@@ -135,7 +136,7 @@ public class JetChangeSignature(val project: Project,
|
||||
|
||||
fun createChangeSignatureDialog(descriptorsForSignatureChange: Collection<FunctionDescriptor>): JetChangeSignatureDialog? {
|
||||
val baseDescriptor = preferContainedInClass(descriptorsForSignatureChange)
|
||||
val functionDeclaration = callableDescriptorToDeclaration(bindingContext, baseDescriptor)
|
||||
val functionDeclaration = DescriptorToDeclarationUtil.getDeclaration(project, baseDescriptor, bindingContext)
|
||||
if (functionDeclaration == null) {
|
||||
LOG.error("Could not find declaration for $baseDescriptor")
|
||||
return null
|
||||
|
||||
+2
-1
@@ -34,6 +34,7 @@ import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContextUtils;
|
||||
import org.jetbrains.jet.lang.resolve.java.jetAsJava.JetClsMethod;
|
||||
import org.jetbrains.jet.lang.types.JetType;
|
||||
import org.jetbrains.jet.plugin.codeInsight.DescriptorToDeclarationUtil;
|
||||
import org.jetbrains.jet.renderer.DescriptorRenderer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -110,7 +111,7 @@ public final class JetChangeSignatureData implements JetMethodDescriptor {
|
||||
|
||||
@NotNull
|
||||
private Collection<PsiElement> computeHierarchyFrom(@NotNull FunctionDescriptor baseDescriptor) {
|
||||
PsiElement declaration = BindingContextUtils.callableDescriptorToDeclaration(bindingContext, baseDescriptor);
|
||||
PsiElement declaration = DescriptorToDeclarationUtil.getDeclaration(baseDeclaration.getProject(), baseDescriptor, bindingContext);
|
||||
Set<PsiElement> result = Sets.newHashSet();
|
||||
result.add(declaration);
|
||||
if (!(declaration instanceof JetNamedFunction)) {
|
||||
|
||||
Reference in New Issue
Block a user