mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-15 02:59:33 +07:00
[kotlin] KTIJ-33966 outer class access simplified
(cherry picked from commit 7ae6ce72c1569785b3335fa0705907fb0cab23c3) IJ-CR-168804 GitOrigin-RevId: 749028f5734c23f288bb6661748f6a0d6906edd5
This commit is contained in:
committed by
intellij-monorepo-bot
parent
82bdd4be8a
commit
c87323b58e
@@ -261,16 +261,15 @@ internal object CallableMetadataProvider {
|
||||
context(KaSession)
|
||||
@OptIn(KaExperimentalApi::class)
|
||||
private fun buildClassType(symbol: KaClassLikeSymbol): KaType = buildClassType(symbol) {
|
||||
val parentTypeParameterCount = symbol.classId
|
||||
?.parentClassId
|
||||
?.let { findClass(it) }
|
||||
?.defaultType
|
||||
?.expandedSymbol
|
||||
?.typeParameters
|
||||
?.size ?: 0
|
||||
val containingSymbol = if (symbol is KaNamedClassSymbol && symbol.isInner)
|
||||
symbol.containingDeclaration as? KaClassSymbol
|
||||
else
|
||||
null
|
||||
|
||||
val times = (containingSymbol?.typeParameters?.size ?: 0) +
|
||||
symbol.typeParameters.size
|
||||
@OptIn(KaExperimentalApi::class)
|
||||
repeat(parentTypeParameterCount + symbol.typeParameters.size) {
|
||||
repeat(times) {
|
||||
argument(buildStarTypeProjection())
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user