FIR LC: use optimal type mapping mode for return type

This commit is contained in:
Jinseong Jeon
2021-11-04 00:17:01 -07:00
committed by Ilya Kirillov
parent d3c34fa200
commit 0da9ef873a
8 changed files with 43 additions and 8 deletions
@@ -12,6 +12,7 @@ import org.jetbrains.kotlin.load.kotlin.TypeMappingMode
public abstract class KtPsiTypeProvider : KtAnalysisSessionComponent() {
public abstract fun asPsiType(type: KtType, useSitePosition: PsiElement, mode: TypeMappingMode): PsiType?
public abstract fun getOptimalModeForReturnType(type: KtType, isAnnotationMethod: Boolean): TypeMappingMode
public abstract fun getOptimalModeForValueParameter(type: KtType): TypeMappingMode
}
@@ -38,6 +39,9 @@ public interface KtPsiTypeProviderMixIn : KtAnalysisSessionMixIn {
): PsiType? =
analysisSession.psiTypeProvider.asPsiType(this, useSitePosition, mode)
public fun KtType.getOptimalModeForReturnType(isAnnotationMethod: Boolean): TypeMappingMode =
analysisSession.psiTypeProvider.getOptimalModeForReturnType(this, isAnnotationMethod)
public fun KtType.getOptimalModeForValueParameter(): TypeMappingMode =
analysisSession.psiTypeProvider.getOptimalModeForValueParameter(this)
}