Create DescriptorFactory utility class
Will contain utilities needed to create different common descriptors, such as default getters/setters, enum values/valueOf methods, etc.
This commit is contained in:
+3
-3
@@ -23,7 +23,7 @@ import org.jetbrains.jet.descriptors.serialization.descriptors.DeserializedTypeP
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.impl.*;
|
||||
import org.jetbrains.jet.lang.resolve.DescriptorResolver;
|
||||
import org.jetbrains.jet.lang.resolve.DescriptorFactory;
|
||||
import org.jetbrains.jet.lang.resolve.DescriptorUtils;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.storage.StorageManager;
|
||||
import org.jetbrains.jet.lang.resolve.name.FqNameUnsafe;
|
||||
@@ -162,7 +162,7 @@ public class DescriptorDeserializer {
|
||||
);
|
||||
}
|
||||
else {
|
||||
getter = DescriptorResolver.createDefaultGetter(property);
|
||||
getter = DescriptorFactory.createDefaultGetter(property);
|
||||
}
|
||||
getter.initialize(property.getReturnType());
|
||||
}
|
||||
@@ -182,7 +182,7 @@ public class DescriptorDeserializer {
|
||||
property.getReturnType(), false, null));
|
||||
}
|
||||
else {
|
||||
setter = DescriptorResolver.createDefaultSetter(property);
|
||||
setter = DescriptorFactory.createDefaultSetter(property);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+7
-5
@@ -24,7 +24,7 @@ import org.jetbrains.jet.descriptors.serialization.*;
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.impl.*;
|
||||
import org.jetbrains.jet.lang.resolve.DescriptorResolver;
|
||||
import org.jetbrains.jet.lang.resolve.DescriptorFactory;
|
||||
import org.jetbrains.jet.lang.resolve.OverridingUtil;
|
||||
import org.jetbrains.jet.lang.resolve.TraceUtil;
|
||||
import org.jetbrains.jet.lang.resolve.lazy.storage.MemoizedFunctionToNullable;
|
||||
@@ -285,14 +285,16 @@ public class DeserializedClassDescriptor extends ClassDescriptorBase implements
|
||||
classObject.setTypeParameterDescriptors(Collections.<TypeParameterDescriptor>emptyList());
|
||||
classObject.createTypeConstructor();
|
||||
|
||||
ConstructorDescriptorImpl primaryConstructor = DescriptorResolver.createPrimaryConstructorForObject(classObject);
|
||||
ConstructorDescriptorImpl primaryConstructor = DescriptorFactory.createPrimaryConstructorForObject(classObject);
|
||||
primaryConstructor.setReturnType(classObject.getDefaultType());
|
||||
classObject.setPrimaryConstructor(primaryConstructor);
|
||||
|
||||
JetType defaultType = getDefaultType();
|
||||
JetType defaultTypeArray = KotlinBuiltIns.getInstance().getArrayType(defaultType);
|
||||
classObject.getBuilder().addFunctionDescriptor(DescriptorResolver.createEnumClassObjectValuesMethod(classObject, defaultTypeArray));
|
||||
classObject.getBuilder().addFunctionDescriptor(DescriptorResolver.createEnumClassObjectValueOfMethod(classObject, defaultType));
|
||||
classObject.getBuilder().addFunctionDescriptor(
|
||||
DescriptorFactory.createEnumClassObjectValuesMethod(classObject, defaultTypeArray));
|
||||
classObject.getBuilder().addFunctionDescriptor(
|
||||
DescriptorFactory.createEnumClassObjectValueOfMethod(classObject, defaultType));
|
||||
|
||||
return classObject;
|
||||
}
|
||||
@@ -304,7 +306,7 @@ public class DeserializedClassDescriptor extends ClassDescriptorBase implements
|
||||
property.setType(getDefaultType(), Collections.<TypeParameterDescriptor>emptyList(),
|
||||
enumClassObject.getThisAsReceiverParameter(), NO_RECEIVER_PARAMETER);
|
||||
|
||||
PropertyGetterDescriptorImpl getter = DescriptorResolver.createDefaultGetter(property);
|
||||
PropertyGetterDescriptorImpl getter = DescriptorFactory.createDefaultGetter(property);
|
||||
getter.initialize(property.getReturnType());
|
||||
property.initialize(getter, null);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user