Use original element when resolving java descriptors in IDE

This commit is contained in:
Denis Zharkov
2015-09-10 20:54:55 +03:00
parent 9c69a64789
commit aac1f68678
@@ -46,11 +46,13 @@ fun PsiMethod.getJavaMethodDescriptor(): FunctionDescriptor? {
} }
fun PsiClass.getJavaClassDescriptor(): ClassDescriptor? { fun PsiClass.getJavaClassDescriptor(): ClassDescriptor? {
return getJavaDescriptorResolver()?.resolveClass(JavaClassImpl(this)) val psiClass = originalElement as? PsiClass ?: return null
return psiClass.getJavaDescriptorResolver()?.resolveClass(JavaClassImpl(psiClass))
} }
fun PsiField.getJavaFieldDescriptor(): PropertyDescriptor? { fun PsiField.getJavaFieldDescriptor(): PropertyDescriptor? {
return getJavaDescriptorResolver()?.resolveField(JavaFieldImpl(this)) val field = originalElement as? PsiField ?: return null
return field.getJavaDescriptorResolver()?.resolveField(JavaFieldImpl(field))
} }
fun PsiMember.getJavaMemberDescriptor(): DeclarationDescriptor? { fun PsiMember.getJavaMemberDescriptor(): DeclarationDescriptor? {