[IR] SAM lowering: made all wrappers private

(cherry picked from commit 2720bb766e4d3688f424403cb8aed6f98629a469)
This commit is contained in:
Igor Chevdar
2020-06-11 14:12:11 +05:00
committed by Vasily Levchenko
parent 426191ea4a
commit 5fc1ec57f5
@@ -5,14 +5,20 @@
package org.jetbrains.kotlin.backend.konan.lower
import org.jetbrains.kotlin.backend.common.ScopeWithIr
import org.jetbrains.kotlin.backend.common.lower.SingleAbstractMethodLowering
import org.jetbrains.kotlin.backend.konan.Context
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.ir.expressions.IrTypeOperatorCall
import org.jetbrains.kotlin.ir.types.IrType
import org.jetbrains.kotlin.ir.types.classOrNull
import org.jetbrains.kotlin.ir.types.defaultType
import org.jetbrains.kotlin.ir.util.render
internal class NativeSingleAbstractMethodLowering(context: Context) : SingleAbstractMethodLowering(context) {
override fun getWrapperVisibility(expression: IrTypeOperatorCall, scopes: List<ScopeWithIr>) =
Visibilities.PRIVATE
override fun getSuperTypeForWrapper(typeOperand: IrType): IrType {
return typeOperand.classOrNull?.defaultType ?: error("Unsupported SAM conversion: ${typeOperand.render()}")
}