Convert to kotlin: DeclarationResolver.kt
This commit is contained in:
@@ -745,7 +745,7 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen {
|
||||
iv.anew(thisDescriptorType);
|
||||
iv.dup();
|
||||
|
||||
ConstructorDescriptor constructor = DeclarationResolver.getConstructorOfDataClass(descriptor);
|
||||
ConstructorDescriptor constructor = getConstructorOfDataClass(descriptor);
|
||||
assert function.getValueParameters().size() == constructor.getValueParameters().size() :
|
||||
"Number of parameters of copy function and constructor are different. " +
|
||||
"Copy: " + function.getValueParameters().size() + ", " +
|
||||
@@ -792,6 +792,12 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen {
|
||||
}
|
||||
}
|
||||
|
||||
private static ConstructorDescriptor getConstructorOfDataClass(@NotNull ClassDescriptor classDescriptor) {
|
||||
Collection<ConstructorDescriptor> constructors = classDescriptor.getConstructors();
|
||||
assert constructors.size() == 1 : "Data class must have only one constructor: " + classDescriptor.getConstructors();
|
||||
return constructors.iterator().next();
|
||||
}
|
||||
|
||||
private void generateEnumMethodsAndConstInitializers() {
|
||||
if (isEnumClass(descriptor)) {
|
||||
generateEnumValuesMethod();
|
||||
|
||||
Reference in New Issue
Block a user