Add getExtensionOrNull utility for protobuf messages
This commit is contained in:
+3
-2
@@ -38,6 +38,7 @@ import org.jetbrains.kotlin.resolve.jvm.JvmClassName
|
||||
import org.jetbrains.kotlin.resolve.jvm.diagnostics.JvmDeclarationOriginKind
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPropertyDescriptor
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedSimpleFunctionDescriptor
|
||||
import org.jetbrains.kotlin.serialization.deserialization.getExtensionOrNull
|
||||
import org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf
|
||||
import org.jetbrains.kotlin.serialization.jvm.JvmProtoBufUtil
|
||||
|
||||
@@ -164,8 +165,8 @@ private object ByJvmSignatureIndexer : DecompiledTextIndexer<ClassNameAndSignatu
|
||||
if (descriptor is DeserializedPropertyDescriptor) {
|
||||
val proto = descriptor.proto
|
||||
val className = (descriptor.containingDeclaration as? ClassDescriptor)?.relativeClassName().orEmpty()
|
||||
if (proto.hasExtension(JvmProtoBuf.propertySignature)) {
|
||||
val signature = proto.getExtension(JvmProtoBuf.propertySignature)
|
||||
val signature = proto.getExtensionOrNull(JvmProtoBuf.propertySignature)
|
||||
if (signature != null) {
|
||||
val fieldSignature = JvmProtoBufUtil.getJvmFieldSignature(proto, descriptor.nameResolver, descriptor.typeTable)
|
||||
if (fieldSignature != null) {
|
||||
save(className, MemberSignature.fromFieldNameAndDesc(fieldSignature.name, fieldSignature.desc))
|
||||
|
||||
Reference in New Issue
Block a user