[IR] Mark IrPropertyImpl with an opt-in annotation
KT-59318
This commit is contained in:
committed by
Space Team
parent
2953d9ec90
commit
c393736473
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.ir.declarations.impl
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.ir.IrImplementationDetail
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -15,7 +16,7 @@ import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
class IrPropertyImpl(
|
||||
class IrPropertyImpl @IrImplementationDetail constructor(
|
||||
override val startOffset: Int,
|
||||
override val endOffset: Int,
|
||||
override var origin: IrDeclarationOrigin,
|
||||
|
||||
+4
-4
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrFileImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrPropertyImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrValueParameterImpl
|
||||
import org.jetbrains.kotlin.ir.descriptors.IrAbstractDescriptorBasedFunctionFactory
|
||||
import org.jetbrains.kotlin.ir.linkage.IrProvider
|
||||
@@ -381,21 +380,22 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
|
||||
|
||||
fun createFakeOverrideProperty(descriptor: PropertyDescriptor): IrProperty {
|
||||
val propertyDeclare = { s: IrPropertySymbol ->
|
||||
IrPropertyImpl(
|
||||
symbolTable.irFactory.createProperty(
|
||||
startOffset = offset,
|
||||
endOffset = offset,
|
||||
origin = memberOrigin,
|
||||
symbol = s,
|
||||
name = descriptor.name,
|
||||
visibility = descriptor.visibility,
|
||||
modality = descriptor.modality,
|
||||
symbol = s,
|
||||
isVar = descriptor.isVar,
|
||||
isConst = descriptor.isConst,
|
||||
isLateinit = descriptor.isLateInit,
|
||||
isDelegated = descriptor.isDelegated,
|
||||
isExternal = descriptor.isExternal,
|
||||
isExpect = descriptor.isExpect,
|
||||
isFakeOverride = true)
|
||||
isFakeOverride = true,
|
||||
)
|
||||
}
|
||||
val property = symbolTable.descriptorExtension.declareProperty(descriptor, propertyFactory = propertyDeclare)
|
||||
|
||||
|
||||
+2
-4
@@ -19,7 +19,6 @@ import org.jetbrains.kotlin.ir.IrStatement
|
||||
import org.jetbrains.kotlin.ir.builders.*
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrPropertyImpl
|
||||
import org.jetbrains.kotlin.ir.expressions.*
|
||||
import org.jetbrains.kotlin.ir.expressions.impl.IrCallImpl
|
||||
import org.jetbrains.kotlin.ir.expressions.impl.IrConstantPrimitiveImpl
|
||||
@@ -393,19 +392,18 @@ private class InlineClassTransformer(private val context: Context) : IrBuildingT
|
||||
)
|
||||
irField.parent = declaration
|
||||
|
||||
val irProperty = IrPropertyImpl(
|
||||
val irProperty = context.irFactory.createProperty(
|
||||
startOffset,
|
||||
endOffset,
|
||||
IrDeclarationOrigin.DEFINED,
|
||||
IrPropertySymbolImpl(),
|
||||
irField.name,
|
||||
irField.visibility,
|
||||
Modality.FINAL,
|
||||
IrPropertySymbolImpl(),
|
||||
isVar = false,
|
||||
isConst = false,
|
||||
isLateinit = false,
|
||||
isDelegated = false,
|
||||
isExternal = false
|
||||
)
|
||||
irProperty.backingField = irField
|
||||
|
||||
|
||||
Reference in New Issue
Block a user