Get rid of assumption that primary ctr is a child of JetClass

As it can be contained within JetObjectDeclaration
This commit is contained in:
Denis Zharkov
2015-05-27 16:05:09 +03:00
parent 71b5cd692b
commit c054dc19e3
11 changed files with 15 additions and 23 deletions
@@ -234,7 +234,7 @@ public class LightClassUtil {
@Nullable
private static PsiClass getWrappingClass(@NotNull JetDeclaration declaration) {
if (declaration instanceof JetParameter) {
JetClass constructorClass = JetPsiUtil.getClassIfParameterIsProperty((JetParameter) declaration);
JetClassOrObject constructorClass = JetPsiUtil.getClassIfParameterIsProperty((JetParameter) declaration);
if (constructorClass != null) {
return getPsiClass(constructorClass);
}
@@ -77,7 +77,7 @@ public fun JetParameter.toPsiParameter(): PsiParameter? {
val method: PsiMethod? = when (owner) {
is JetFunction -> LightClassUtil.getLightClassMethod(owner)
is JetPropertyAccessor -> LightClassUtil.getLightClassAccessorMethod(owner)
is JetPrimaryConstructor -> LightClassUtil.getPsiClass(owner.getContainingClass())?.getConstructors()?.let { constructors ->
is JetPrimaryConstructor -> LightClassUtil.getPsiClass(owner.getContainingClassOrObject())?.getConstructors()?.let { constructors ->
if (constructors.isNotEmpty()) constructors[0] else null
}
else -> null