Moved local declaration descriptor serialization
from KonanLinkData where it serves no purpose, to KonanIr where it belongs.
This commit is contained in:
committed by
alexander-gorshenev
parent
2c1fa5e965
commit
503399ade3
+1
-1
@@ -79,7 +79,7 @@ internal class IrDescriptorDeserializer(val context: Context,
|
||||
context.log{"### deserialized Kotlin Type index=$index, text=$text:\t$realType"}
|
||||
return realType
|
||||
}
|
||||
fun deserializeLocalDeclaration(irProto: KonanIr.KotlinDescriptor, proto: KonanLinkData.Descriptor): DeclarationDescriptor {
|
||||
fun deserializeLocalDeclaration(irProto: KonanIr.KotlinDescriptor, proto: KonanIr.DeclarationDescriptor): DeclarationDescriptor {
|
||||
when {
|
||||
proto.hasFunction() -> {
|
||||
val functionProto = proto.function
|
||||
|
||||
+12
-2
@@ -2,6 +2,7 @@
|
||||
syntax = "proto2";
|
||||
package org.jetbrains.kotlin.serialization;
|
||||
|
||||
import "org/jetbrains/kotlin/backend/konan/serialization/descriptors.proto1";
|
||||
import "org/jetbrains/kotlin/backend/konan/serialization/KonanLinkData.proto";
|
||||
option java_outer_classname = "KonanIr";
|
||||
option optimize_for = LITE_RUNTIME;
|
||||
@@ -41,9 +42,18 @@ message UniqId {
|
||||
required int64 index = 1;
|
||||
}
|
||||
|
||||
// Inner descriptors used for inlining.
|
||||
message DeclarationDescriptor {
|
||||
// These are ProtoBuf.Function, ProtoBuf.Class etc
|
||||
oneof descriptor {
|
||||
Function function = 1;
|
||||
Class clazz = 2;
|
||||
Property property = 3;
|
||||
Constructor constructor = 4;
|
||||
}
|
||||
}
|
||||
message LocalDeclaration {
|
||||
// This is Descriptor message from KonanLinkData
|
||||
required Descriptor descriptor = 1;
|
||||
required DeclarationDescriptor descriptor = 1;
|
||||
}
|
||||
|
||||
message KotlinType {
|
||||
|
||||
-10
@@ -70,16 +70,6 @@ message InlineIrBody {
|
||||
required string encoded_ir = 11;
|
||||
}
|
||||
|
||||
// Inner descriptors used for inlining.
|
||||
message Descriptor {
|
||||
oneof descriptor {
|
||||
Function function = 1;
|
||||
Class clazz = 2;
|
||||
Property property = 3;
|
||||
Constructor constructor = 4;
|
||||
}
|
||||
}
|
||||
|
||||
// Konan Binary Linkdata structures.
|
||||
|
||||
message PackageFragment {
|
||||
|
||||
+3
-2
@@ -41,6 +41,7 @@ import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
|
||||
import org.jetbrains.kotlin.resolve.scopes.MemberScope
|
||||
import org.jetbrains.kotlin.serialization.KonanDescriptorSerializer
|
||||
import org.jetbrains.kotlin.serialization.KonanIr
|
||||
import org.jetbrains.kotlin.serialization.KonanLinkData
|
||||
import org.jetbrains.kotlin.serialization.ProtoBuf
|
||||
import org.jetbrains.kotlin.serialization.deserialization.*
|
||||
@@ -295,9 +296,9 @@ internal class KonanSerializationUtil(val context: Context) {
|
||||
return property
|
||||
}
|
||||
|
||||
fun serializeLocalDeclaration(descriptor: DeclarationDescriptor): KonanLinkData.Descriptor {
|
||||
fun serializeLocalDeclaration(descriptor: DeclarationDescriptor): KonanIr.DeclarationDescriptor {
|
||||
|
||||
val proto = KonanLinkData.Descriptor.newBuilder()
|
||||
val proto = KonanIr.DeclarationDescriptor.newBuilder()
|
||||
|
||||
context.log{"### serializeLocalDeclaration: $descriptor"}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user