diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/lightClassUtils.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/lightClassUtils.kt index e09686814c7..1876d0900a7 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/lightClassUtils.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/lightClassUtils.kt @@ -113,14 +113,15 @@ private fun KtParameter.toAnnotationLightMethod(): PsiMethod? { } fun KtTypeParameter.toPsiTypeParameters(): List { - val paramList = getNonStrictParentOfType() - if (paramList == null) return listOf() + val paramList = getNonStrictParentOfType() ?: return listOf() - val paramIndex = paramList.getParameters().indexOf(this) - val jetDeclaration = paramList.getNonStrictParentOfType() ?: return listOf() - val lightOwners = jetDeclaration.toLightElements() + val paramIndex = paramList.parameters.indexOf(this) + val ktDeclaration = paramList.getNonStrictParentOfType() ?: return listOf() + val lightOwners = ktDeclaration.toLightElements() - return lightOwners.mapNotNull { lightOwner -> (lightOwner as? PsiTypeParameterListOwner)?.typeParameters?.get(paramIndex) } + return lightOwners.mapNotNull { lightOwner -> + (lightOwner as? PsiTypeParameterListOwner)?.typeParameters?.getOrNull(paramIndex) + } } // Returns original declaration if given PsiElement is a Kotlin light element, and element itself otherwise