unify Property{Getter,Setter}Descriptor constructors
This commit is contained in:
@@ -241,11 +241,9 @@ public abstract class CodegenContext {
|
|||||||
pgd.initialize(myAccessor.getOutType());
|
pgd.initialize(myAccessor.getOutType());
|
||||||
|
|
||||||
PropertySetterDescriptor psd = new PropertySetterDescriptor(
|
PropertySetterDescriptor psd = new PropertySetterDescriptor(
|
||||||
myAccessor.getModality(),
|
myAccessor, Collections.<AnnotationDescriptor>emptyList(), myAccessor.getModality(),
|
||||||
myAccessor.getVisibility(),
|
myAccessor.getVisibility(),
|
||||||
myAccessor,
|
false, false);
|
||||||
Collections.<AnnotationDescriptor>emptyList(),
|
|
||||||
false, false);
|
|
||||||
myAccessor.initialize(pgd, psd);
|
myAccessor.initialize(pgd, psd);
|
||||||
accessor = myAccessor;
|
accessor = myAccessor;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -235,10 +235,8 @@ public class PropertyDescriptor extends VariableDescriptorImpl implements Callab
|
|||||||
newGetter.initialize(getter.getReturnType());
|
newGetter.initialize(getter.getReturnType());
|
||||||
}
|
}
|
||||||
PropertySetterDescriptor newSetter = setter == null ? null : new PropertySetterDescriptor(
|
PropertySetterDescriptor newSetter = setter == null ? null : new PropertySetterDescriptor(
|
||||||
DescriptorUtils.convertModality(setter.getModality(), makeNonAbstract), setter.getVisibility(),
|
propertyDescriptor, Lists.newArrayList(setter.getAnnotations()), DescriptorUtils.convertModality(setter.getModality(), makeNonAbstract), setter.getVisibility(),
|
||||||
propertyDescriptor,
|
setter.hasBody(), setter.isDefault());
|
||||||
Lists.newArrayList(setter.getAnnotations()),
|
|
||||||
setter.hasBody(), setter.isDefault());
|
|
||||||
if (newSetter != null) {
|
if (newSetter != null) {
|
||||||
newSetter.initialize(setter.getValueParameters().get(0).copy(newSetter));
|
newSetter.initialize(setter.getValueParameters().get(0).copy(newSetter));
|
||||||
}
|
}
|
||||||
|
|||||||
+7
-6
@@ -16,12 +16,13 @@ public class PropertySetterDescriptor extends PropertyAccessorDescriptor {
|
|||||||
|
|
||||||
private ValueParameterDescriptor parameter;
|
private ValueParameterDescriptor parameter;
|
||||||
|
|
||||||
public PropertySetterDescriptor(@NotNull Modality modality,
|
public PropertySetterDescriptor(
|
||||||
@NotNull Visibility visibility,
|
@NotNull PropertyDescriptor correspondingProperty,
|
||||||
@NotNull PropertyDescriptor correspondingProperty,
|
@NotNull List<AnnotationDescriptor> annotations,
|
||||||
@NotNull List<AnnotationDescriptor> annotations,
|
@NotNull Modality modality,
|
||||||
boolean hasBody,
|
@NotNull Visibility visibility,
|
||||||
boolean isDefault) {
|
boolean hasBody,
|
||||||
|
boolean isDefault) {
|
||||||
super(modality, visibility, correspondingProperty, annotations, "set-" + correspondingProperty.getName(), hasBody, isDefault);
|
super(modality, visibility, correspondingProperty, annotations, "set-" + correspondingProperty.getName(), hasBody, isDefault);
|
||||||
if (isDefault) {
|
if (isDefault) {
|
||||||
initializeDefault();
|
initializeDefault();
|
||||||
|
|||||||
@@ -649,9 +649,9 @@ public class DescriptorResolver {
|
|||||||
JetParameter parameter = setter.getParameter();
|
JetParameter parameter = setter.getParameter();
|
||||||
|
|
||||||
setterDescriptor = new PropertySetterDescriptor(
|
setterDescriptor = new PropertySetterDescriptor(
|
||||||
resolveModalityFromModifiers(setter.getModifierList(), propertyDescriptor.getModality()),
|
propertyDescriptor, annotations, resolveModalityFromModifiers(setter.getModifierList(), propertyDescriptor.getModality()),
|
||||||
resolveVisibilityFromModifiers(setter.getModifierList(), propertyDescriptor.getVisibility()),
|
resolveVisibilityFromModifiers(setter.getModifierList(), propertyDescriptor.getVisibility()),
|
||||||
propertyDescriptor, annotations, setter.getBodyExpression() != null, false);
|
setter.getBodyExpression() != null, false);
|
||||||
if (parameter != null) {
|
if (parameter != null) {
|
||||||
if (parameter.isRef()) {
|
if (parameter.isRef()) {
|
||||||
// trace.getErrorHandler().genericError(parameter.getRefNode(), "Setter parameters can not be 'ref'");
|
// trace.getErrorHandler().genericError(parameter.getRefNode(), "Setter parameters can not be 'ref'");
|
||||||
@@ -709,9 +709,9 @@ public class DescriptorResolver {
|
|||||||
private PropertySetterDescriptor createDefaultSetter(PropertyDescriptor propertyDescriptor) {
|
private PropertySetterDescriptor createDefaultSetter(PropertyDescriptor propertyDescriptor) {
|
||||||
PropertySetterDescriptor setterDescriptor;
|
PropertySetterDescriptor setterDescriptor;
|
||||||
setterDescriptor = new PropertySetterDescriptor(
|
setterDescriptor = new PropertySetterDescriptor(
|
||||||
propertyDescriptor.getModality(),
|
propertyDescriptor, Collections.<AnnotationDescriptor>emptyList(), propertyDescriptor.getModality(),
|
||||||
propertyDescriptor.getVisibility(),
|
propertyDescriptor.getVisibility(),
|
||||||
propertyDescriptor, Collections.<AnnotationDescriptor>emptyList(), false, true);
|
false, true);
|
||||||
return setterDescriptor;
|
return setterDescriptor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user