Add KtType.isArrayOrPrimitiveArray/isNestedArray() to AA
This commit is contained in:
committed by
Ilya Kirillov
parent
4436ce22b0
commit
f8a101cf3a
+12
-3
@@ -13,9 +13,7 @@ import org.jetbrains.kotlin.analysis.api.lifetime.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.api.types.KtType
|
||||
import org.jetbrains.kotlin.builtins.functions.FunctionClassKind
|
||||
import org.jetbrains.kotlin.fir.resolve.FirSamResolverImpl
|
||||
import org.jetbrains.kotlin.fir.types.canBeNull
|
||||
import org.jetbrains.kotlin.fir.types.functionClassKind
|
||||
import org.jetbrains.kotlin.fir.types.typeApproximator
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
|
||||
internal class KtFirTypeInfoProvider(
|
||||
override val analysisSession: KtFirAnalysisSession,
|
||||
@@ -46,4 +44,15 @@ internal class KtFirTypeInfoProvider(
|
||||
PublicTypeApproximator.PublicApproximatorConfiguration(false)
|
||||
) == null
|
||||
}
|
||||
|
||||
override fun isArrayOrPrimitiveArray(type: KtType): Boolean {
|
||||
require(type is KtFirType)
|
||||
return type.coneType.isArrayOrPrimitiveArray
|
||||
}
|
||||
|
||||
override fun isNestedArray(type: KtType): Boolean {
|
||||
if (!isArrayOrPrimitiveArray(type)) return false
|
||||
require(type is KtFirType)
|
||||
return type.coneType.arrayElementType()?.isArrayOrPrimitiveArray == true
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user