KT-1490 serialization of constructor parameters
This commit is contained in:
@@ -516,10 +516,12 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (ValueParameterDescriptor valueParameter : constructorDescriptor.getValueParameters()) {
|
for (ValueParameterDescriptor valueParameter : constructorDescriptor.getValueParameters()) {
|
||||||
JetValueParameterAnnotationWriter jetValueParameterAnnotation = JetValueParameterAnnotationWriter.visitParameterAnnotation(mv, i++);
|
JetValueParameterAnnotationWriter jetValueParameterAnnotation = JetValueParameterAnnotationWriter.visitParameterAnnotation(mv, i);
|
||||||
jetValueParameterAnnotation.writeName(valueParameter.getName());
|
jetValueParameterAnnotation.writeName(valueParameter.getName());
|
||||||
jetValueParameterAnnotation.writeHasDefaultValue(valueParameter.hasDefaultValue());
|
jetValueParameterAnnotation.writeHasDefaultValue(valueParameter.hasDefaultValue());
|
||||||
|
jetValueParameterAnnotation.writeType(constructorMethod.getKotlinParameterType(i));
|
||||||
jetValueParameterAnnotation.visitEnd();
|
jetValueParameterAnnotation.visitEnd();
|
||||||
|
++i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package test
|
||||||
|
|
||||||
|
import java.util.Collection
|
||||||
|
|
||||||
|
class TestingKotlinCollections(val arguments: Collection<String>)
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
namespace test
|
||||||
|
|
||||||
|
final class test.TestingKotlinCollections : jet.Any {
|
||||||
|
final /*constructor*/ fun <init>(/*0*/ arguments: java.util.Collection<jet.String>): test.TestingKotlinCollections
|
||||||
|
val arguments: java.util.Collection<jet.String>
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
import java.util.Collection
|
||||||
|
|
||||||
|
class TestingKotlinCollections(val arguments: Collection<String>)
|
||||||
|
|
||||||
|
// method: TestingKotlinCollections::<init>
|
||||||
|
// jvm signature: (Ljava/util/Collection;)V
|
||||||
|
// generic signature: (Ljava/util/Collection<Ljava/lang/String;>;)V
|
||||||
|
// kotlin signature: (Ljava/util/Collection<Ljava/lang/String;>;)null
|
||||||
Reference in New Issue
Block a user