[Commonizer] Simplify CirClassOrTypeAliasType.withParentArguments()
^KT-48288
This commit is contained in:
committed by
Space
parent
459e01a729
commit
e1bc6c54d7
@@ -90,17 +90,9 @@ internal fun CirClassOrTypeAliasType.withParentArguments(
|
|||||||
val newIsMarkedNullable = isMarkedNullable || parentIsMarkedNullable
|
val newIsMarkedNullable = isMarkedNullable || parentIsMarkedNullable
|
||||||
|
|
||||||
val newArguments = arguments.map { oldArgument ->
|
val newArguments = arguments.map { oldArgument ->
|
||||||
if (oldArgument is CirRegularTypeProjection) {
|
if (oldArgument !is CirRegularTypeProjection) return@map oldArgument
|
||||||
val oldArgumentType = oldArgument.type
|
if (oldArgument.type !is CirTypeParameterType) return@map oldArgument
|
||||||
if (oldArgumentType is CirTypeParameterType) {
|
parentArguments[oldArgument.type.index]
|
||||||
when (val parentArgument = parentArguments[oldArgumentType.index]) {
|
|
||||||
is CirRegularTypeProjection -> if (parentArgument is CirClassOrTypeAliasType) return@map parentArgument
|
|
||||||
is CirStarTypeProjection -> return@map parentArgument
|
|
||||||
}
|
|
||||||
return@map parentArguments[oldArgumentType.index]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
oldArgument
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return when (val newUnderlyingType = makeNullableIfNecessary(newIsMarkedNullable).withArguments(newArguments)) {
|
return when (val newUnderlyingType = makeNullableIfNecessary(newIsMarkedNullable).withArguments(newArguments)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user