From 168f1000e45bc4b992882a0c57a35bf24a5e72a1 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Wed, 7 Oct 2015 03:58:01 +0300 Subject: [PATCH] Remove confusing outdated code about copying JVM signatures This was necessary with old package facades, but not anymore because metadata is written separately to file classes and codegen now never tries to serialize deserialized descriptors --- .../serialization/JvmSerializerExtension.java | 86 +++---------------- 1 file changed, 10 insertions(+), 76 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.java index c9666289d89..8ceaceed003 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.java @@ -29,9 +29,6 @@ import org.jetbrains.kotlin.serialization.AnnotationSerializer; import org.jetbrains.kotlin.serialization.ProtoBuf; import org.jetbrains.kotlin.serialization.SerializerExtension; import org.jetbrains.kotlin.serialization.StringTable; -import org.jetbrains.kotlin.serialization.deserialization.NameResolver; -import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPropertyDescriptor; -import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedSimpleFunctionDescriptor; import org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf; import org.jetbrains.kotlin.types.JetType; import org.jetbrains.org.objectweb.asm.Type; @@ -88,8 +85,7 @@ public class JvmSerializerExtension extends SerializerExtension { public void serializeConstructor(@NotNull ConstructorDescriptor descriptor, @NotNull ProtoBuf.Constructor.Builder proto) { Method method = bindings.get(METHOD_FOR_FUNCTION, descriptor); if (method != null) { - JvmProtoBuf.JvmMethodSignature signature = new SignatureSerializer().methodSignature(method); - proto.setExtension(JvmProtoBuf.constructorSignature, signature); + proto.setExtension(JvmProtoBuf.constructorSignature, new SignatureSerializer().methodSignature(method)); } saveImplClassName(descriptor, proto); @@ -97,22 +93,9 @@ public class JvmSerializerExtension extends SerializerExtension { @Override public void serializeFunction(@NotNull FunctionDescriptor descriptor, @NotNull ProtoBuf.Function.Builder proto) { - SignatureSerializer signatureSerializer = new SignatureSerializer(); - - JvmProtoBuf.JvmMethodSignature signature; - if (descriptor instanceof DeserializedSimpleFunctionDescriptor) { - DeserializedSimpleFunctionDescriptor deserialized = (DeserializedSimpleFunctionDescriptor) descriptor; - signature = signatureSerializer.copyMethodSignature( - deserialized.getProto().getExtension(JvmProtoBuf.methodSignature), deserialized.getNameResolver() - ); - } - else { - Method method = bindings.get(METHOD_FOR_FUNCTION, descriptor); - signature = method != null ? signatureSerializer.methodSignature(method) : null; - } - - if (signature != null) { - proto.setExtension(JvmProtoBuf.methodSignature, signature); + Method method = bindings.get(METHOD_FOR_FUNCTION, descriptor); + if (method != null) { + proto.setExtension(JvmProtoBuf.methodSignature, new SignatureSerializer().methodSignature(method)); } saveImplClassName(descriptor, proto); @@ -144,22 +127,12 @@ public class JvmSerializerExtension extends SerializerExtension { Method syntheticMethod = bindings.get(SYNTHETIC_METHOD_FOR_PROPERTY, descriptor); - JvmProtoBuf.JvmPropertySignature signature; - if (descriptor instanceof DeserializedPropertyDescriptor) { - DeserializedPropertyDescriptor deserializedCallable = (DeserializedPropertyDescriptor) descriptor; - signature = signatureSerializer.copyPropertySignature( - deserializedCallable.getProto().getExtension(JvmProtoBuf.propertySignature), - deserializedCallable.getNameResolver() - ); - } - else { - signature = signatureSerializer.propertySignature( - fieldName, fieldDesc, isStaticInOuter, - syntheticMethod != null ? signatureSerializer.methodSignature(syntheticMethod) : null, - getterMethod != null ? signatureSerializer.methodSignature(getterMethod) : null, - setterMethod != null ? signatureSerializer.methodSignature(setterMethod) : null - ); - } + JvmProtoBuf.JvmPropertySignature signature = signatureSerializer.propertySignature( + fieldName, fieldDesc, isStaticInOuter, + syntheticMethod != null ? signatureSerializer.methodSignature(syntheticMethod) : null, + getterMethod != null ? signatureSerializer.methodSignature(getterMethod) : null, + setterMethod != null ? signatureSerializer.methodSignature(setterMethod) : null + ); proto.setExtension(JvmProtoBuf.propertySignature, signature); @@ -180,17 +153,6 @@ public class JvmSerializerExtension extends SerializerExtension { } private class SignatureSerializer { - @NotNull - public JvmProtoBuf.JvmMethodSignature copyMethodSignature( - @NotNull JvmProtoBuf.JvmMethodSignature signature, - @NotNull NameResolver nameResolver - ) { - return methodSignature(new Method( - nameResolver.getString(signature.getName()), - nameResolver.getString(signature.getDesc()) - )); - } - @NotNull public JvmProtoBuf.JvmMethodSignature methodSignature(@NotNull Method method) { return JvmProtoBuf.JvmMethodSignature.newBuilder() @@ -199,34 +161,6 @@ public class JvmSerializerExtension extends SerializerExtension { .build(); } - @NotNull - public JvmProtoBuf.JvmPropertySignature copyPropertySignature( - @NotNull JvmProtoBuf.JvmPropertySignature signature, - @NotNull NameResolver nameResolver - ) { - String fieldName; - String fieldDesc; - boolean isStaticInOuter; - if (signature.hasField()) { - JvmProtoBuf.JvmFieldSignature field = signature.getField(); - fieldName = nameResolver.getString(field.getName()); - fieldDesc = nameResolver.getString(field.getDesc()); - isStaticInOuter = field.getIsStaticInOuter(); - } - else { - fieldName = null; - fieldDesc = null; - isStaticInOuter = false; - } - - return propertySignature( - fieldName, fieldDesc, isStaticInOuter, - signature.hasSyntheticMethod() ? copyMethodSignature(signature.getSyntheticMethod(), nameResolver) : null, - signature.hasGetter() ? copyMethodSignature(signature.getGetter(), nameResolver) : null, - signature.hasSetter() ? copyMethodSignature(signature.getSetter(), nameResolver) : null - ); - } - @NotNull public JvmProtoBuf.JvmPropertySignature propertySignature( @Nullable String fieldName,