IR metadata source: do not require descriptor in property metadata
This commit is contained in:
+1
-1
@@ -134,7 +134,7 @@ class DescriptorBasedClassCodegen internal constructor(
|
||||
}
|
||||
|
||||
override fun bindFieldMetadata(field: IrField, fieldType: Type, fieldName: String) {
|
||||
val descriptor = field.metadata?.descriptor
|
||||
val descriptor = (field.metadata as? MetadataSource.Property)?.descriptor
|
||||
if (descriptor != null) {
|
||||
state.globalSerializationBindings.put(JvmSerializationBindings.FIELD_FOR_PROPERTY, descriptor, fieldType to fieldName)
|
||||
}
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ class IrFieldBuilder : IrDeclarationBuilder() {
|
||||
var isExternal: Boolean = false
|
||||
var isStatic: Boolean = false
|
||||
var isFakeOverride: Boolean = false
|
||||
var metadata: MetadataSource.Property? = null
|
||||
var metadata: MetadataSource? = null
|
||||
|
||||
fun updateFrom(from: IrField) {
|
||||
super.updateFrom(from)
|
||||
|
||||
@@ -27,5 +27,5 @@ interface IrField :
|
||||
|
||||
var correspondingPropertySymbol: IrPropertySymbol?
|
||||
|
||||
override val metadata: MetadataSource.Property?
|
||||
override val metadata: MetadataSource?
|
||||
}
|
||||
|
||||
@@ -104,9 +104,9 @@ class IrFieldImpl(
|
||||
}
|
||||
}
|
||||
|
||||
override var metadataField: MetadataSource.Property? = null
|
||||
override var metadataField: MetadataSource? = null
|
||||
|
||||
override var metadata: MetadataSource.Property?
|
||||
override var metadata: MetadataSource?
|
||||
get() = getCarrier().metadataField
|
||||
set(v) {
|
||||
if (metadata !== v) {
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol
|
||||
interface FieldCarrier : DeclarationCarrier<FieldCarrier> {
|
||||
var initializerField: IrExpressionBody?
|
||||
var correspondingPropertySymbolField: IrPropertySymbol?
|
||||
var metadataField: MetadataSource.Property?
|
||||
var metadataField: MetadataSource?
|
||||
var overridenSymbolsField: List<IrFieldSymbol>
|
||||
|
||||
override fun clone(): FieldCarrier {
|
||||
@@ -40,6 +40,6 @@ class FieldCarrierImpl(
|
||||
override var annotationsField: List<IrConstructorCall>,
|
||||
override var initializerField: IrExpressionBody?,
|
||||
override var correspondingPropertySymbolField: IrPropertySymbol?,
|
||||
override var metadataField: MetadataSource.Property?,
|
||||
override var metadataField: MetadataSource?,
|
||||
override var overridenSymbolsField: List<IrFieldSymbol>
|
||||
): FieldCarrier
|
||||
Reference in New Issue
Block a user