Extract serialization of packageFqName extension to SerializerExtensionBase
This commit is contained in:
+9
-1
@@ -17,10 +17,14 @@
|
||||
package org.jetbrains.kotlin.serialization
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.resolve.constants.NullValue
|
||||
import org.jetbrains.kotlin.types.KotlinType
|
||||
|
||||
open class KotlinSerializerExtensionBase(private val protocol: SerializerExtensionProtocol) : SerializerExtension() {
|
||||
open class KotlinSerializerExtensionBase(
|
||||
private val protocol: SerializerExtensionProtocol,
|
||||
private val packageFqName: FqName
|
||||
) : SerializerExtension() {
|
||||
override val stringTable = StringTableImpl()
|
||||
|
||||
override fun serializeClass(descriptor: ClassDescriptor, proto: ProtoBuf.Class.Builder) {
|
||||
@@ -29,6 +33,10 @@ open class KotlinSerializerExtensionBase(private val protocol: SerializerExtensi
|
||||
}
|
||||
}
|
||||
|
||||
override fun serializePackage(proto: ProtoBuf.Package.Builder) {
|
||||
proto.setExtension(protocol.packageFqName, stringTable.getPackageFqNameIndex(packageFqName))
|
||||
}
|
||||
|
||||
override fun serializeConstructor(descriptor: ConstructorDescriptor, proto: ProtoBuf.Constructor.Builder) {
|
||||
for (annotation in descriptor.annotations) {
|
||||
proto.addExtension(protocol.constructorAnnotation, annotationSerializer.serializeAnnotation(annotation))
|
||||
|
||||
Reference in New Issue
Block a user