UltraLight implementation for local and anonymous declarations
This commit is contained in:
@@ -87,7 +87,8 @@ class KotlinTypeMapper @JvmOverloads constructor(
|
||||
private val incompatibleClassTracker: IncompatibleClassTracker = IncompatibleClassTracker.DoNothing,
|
||||
val jvmTarget: JvmTarget = JvmTarget.DEFAULT,
|
||||
private val isIrBackend: Boolean = false,
|
||||
private val typePreprocessor: ((KotlinType) -> KotlinType?)? = null
|
||||
private val typePreprocessor: ((KotlinType) -> KotlinType?)? = null,
|
||||
private val namePreprocessor: ((ClassDescriptor) -> String?)? = null
|
||||
) {
|
||||
private val isReleaseCoroutines = languageVersionSettings.supportsFeature(LanguageFeature.ReleaseCoroutines)
|
||||
|
||||
@@ -104,6 +105,10 @@ class KotlinTypeMapper @JvmOverloads constructor(
|
||||
return getPredefinedTypeForClass(classDescriptor)?.internalName
|
||||
}
|
||||
|
||||
override fun getPredefinedFullInternalNameForClass(classDescriptor: ClassDescriptor): String? {
|
||||
return namePreprocessor?.invoke(classDescriptor)
|
||||
}
|
||||
|
||||
override fun processErrorType(kotlinType: KotlinType, descriptor: ClassDescriptor) {
|
||||
if (classBuilderMode.generateBodies) {
|
||||
throw IllegalStateException(generateErrorMessageForErrorType(kotlinType, descriptor))
|
||||
|
||||
Reference in New Issue
Block a user