[IR] Mark IrClassImpl with an opt-in annotation

KT-59318
This commit is contained in:
Sergej Jaskiewicz
2023-12-07 16:16:13 +01:00
committed by Space Team
parent 8aacb59aec
commit 2fab853700
7 changed files with 29 additions and 29 deletions
@@ -1114,13 +1114,15 @@ private class ObjCBlockPointerValuePassing(
private fun IrBuilderWithScope.generateKotlinFunctionClass(): IrConstructor {
val symbols = stubs.symbols
val irClass = IrClassImpl(
startOffset, endOffset,
OBJC_BLOCK_FUNCTION_IMPL, IrClassSymbolImpl(),
val irClass = context.irFactory.createClass(
startOffset,
endOffset,
OBJC_BLOCK_FUNCTION_IMPL,
Name.identifier(stubs.getUniqueKotlinFunctionReferenceClassName("BlockFunctionImpl")),
ClassKind.CLASS, DescriptorVisibilities.PRIVATE, Modality.FINAL,
isCompanion = false, isInner = false, isData = false, isExternal = false,
isValue = false, isExpect = false, isFun = false
DescriptorVisibilities.PRIVATE,
IrClassSymbolImpl(),
ClassKind.CLASS,
Modality.FINAL,
)
irClass.createParameterDeclarations()
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.ir.IrStatement
import org.jetbrains.kotlin.ir.builders.*
import org.jetbrains.kotlin.ir.builders.declarations.buildField
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.declarations.impl.IrClassImpl
import org.jetbrains.kotlin.ir.declarations.impl.IrConstructorImpl
import org.jetbrains.kotlin.ir.declarations.impl.IrFunctionImpl
import org.jetbrains.kotlin.ir.expressions.IrExpression
@@ -34,15 +33,12 @@ import org.jetbrains.kotlin.ir.symbols.impl.IrConstructorSymbolImpl
import org.jetbrains.kotlin.ir.symbols.impl.IrSimpleFunctionSymbolImpl
import org.jetbrains.kotlin.ir.types.*
import org.jetbrains.kotlin.ir.util.*
import org.jetbrains.kotlin.ir.util.SetDeclarationsParentVisitor
import org.jetbrains.kotlin.ir.util.addChild
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.resolve.descriptorUtil.module
internal class TestProcessor (val context: Context) {
companion object {
@@ -479,21 +475,15 @@ internal class TestProcessor (val context: Context) {
functions: Collection<TestFunction>,
irFile: IrFile
): IrClass {
return IrClassImpl(
testClass.startOffset, testClass.endOffset,
return context.irFactory.createClass(
testClass.startOffset,
testClass.endOffset,
TEST_SUITE_CLASS,
IrClassSymbolImpl(),
testClass.name.synthesizeSuiteClassName(),
ClassKind.CLASS,
DescriptorVisibilities.PRIVATE,
IrClassSymbolImpl(),
ClassKind.CLASS,
Modality.FINAL,
isCompanion = false,
isInner = false,
isData = false,
isExternal = false,
isValue = false,
isExpect = false,
isFun = false
).apply {
irFile.addChild(this)
createParameterDeclarations()