[Native] Drop getContainingFile from IrUtils2
We can reuse `fileOrNull` function from common `IrUtils`
This commit is contained in:
+1
-1
@@ -467,7 +467,7 @@ internal class ClassLayoutBuilder(val irClass: IrClass, val context: Context) {
|
||||
val result = mutableMapOf<IrClass, IrClass>()
|
||||
|
||||
irClass.annotations.forEach {
|
||||
val irFile = irClass.getContainingFile()
|
||||
val irFile = irClass.fileOrNull
|
||||
|
||||
val annotationClass = (it.symbol.owner as? IrConstructor)?.constructedClass
|
||||
?: error(irFile, it, "unexpected annotation")
|
||||
|
||||
+2
-2
@@ -1142,11 +1142,11 @@ private fun ObjCExportCodeGenerator.effectiveThrowsClasses(method: IrFunction, s
|
||||
val throwsVararg = throwsAnnotation.getValueArgument(0)
|
||||
?: return emptyList()
|
||||
|
||||
if (throwsVararg !is IrVararg) error(method.getContainingFile(), throwsVararg, "unexpected vararg")
|
||||
if (throwsVararg !is IrVararg) error(method.fileOrNull, throwsVararg, "unexpected vararg")
|
||||
|
||||
return throwsVararg.elements.map {
|
||||
(it as? IrClassReference)?.symbol?.owner as? IrClass
|
||||
?: error(method.getContainingFile(), it, "unexpected @Throws argument")
|
||||
?: error(method.fileOrNull, it, "unexpected @Throws argument")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -509,7 +509,7 @@ internal object DataFlowIR {
|
||||
type.vtable += layoutBuilder.vtableEntries.map {
|
||||
val implementation = it.getImplementation(context)
|
||||
?: error(
|
||||
irClass.getContainingFile(),
|
||||
irClass.fileOrNull,
|
||||
irClass,
|
||||
"""
|
||||
no implementation found for ${it.overriddenFunction.render()}
|
||||
@@ -524,7 +524,7 @@ internal object DataFlowIR {
|
||||
type.itable[iface.classId] = iface.interfaceVTableEntries.map {
|
||||
val implementation = layoutBuilder.overridingOf(it)
|
||||
?: error(
|
||||
irClass.getContainingFile(),
|
||||
irClass.fileOrNull,
|
||||
irClass,
|
||||
"""
|
||||
no implementation found for ${it.render()}
|
||||
|
||||
-10
@@ -97,16 +97,6 @@ inline fun <reified T> stub(name: String): T {
|
||||
} as T
|
||||
}
|
||||
|
||||
tailrec fun IrDeclaration.getContainingFile(): IrFile? {
|
||||
val parent = this.parent
|
||||
|
||||
return when (parent) {
|
||||
is IrFile -> parent
|
||||
is IrDeclaration -> parent.getContainingFile()
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
|
||||
fun IrFunctionAccessExpression.addArguments(args: Map<IrValueParameter, IrExpression>) {
|
||||
val unhandledParameters = args.keys.toMutableSet()
|
||||
fun getArg(parameter: IrValueParameter) = args[parameter]?.also { unhandledParameters -= parameter }
|
||||
|
||||
Reference in New Issue
Block a user