Minor refactoring: static import ModifiersChecker static utilities

This commit is contained in:
Pavel V. Talanov
2012-11-16 18:42:13 +04:00
parent 662acb58b1
commit 9c7cb64a30
2 changed files with 20 additions and 16 deletions
@@ -50,6 +50,8 @@ import static org.jetbrains.jet.lang.diagnostics.Errors.*;
import static org.jetbrains.jet.lang.resolve.BindingContext.CONSTRUCTOR; import static org.jetbrains.jet.lang.resolve.BindingContext.CONSTRUCTOR;
import static org.jetbrains.jet.lang.resolve.DescriptorUtils.getDefaultConstructorVisibility; import static org.jetbrains.jet.lang.resolve.DescriptorUtils.getDefaultConstructorVisibility;
import static org.jetbrains.jet.lang.resolve.DescriptorUtils.getExpectedThisObjectIfNeeded; import static org.jetbrains.jet.lang.resolve.DescriptorUtils.getExpectedThisObjectIfNeeded;
import static org.jetbrains.jet.lang.resolve.ModifiersChecker.resolveModalityFromModifiers;
import static org.jetbrains.jet.lang.resolve.ModifiersChecker.resolveVisibilityFromModifiers;
import static org.jetbrains.jet.lexer.JetTokens.OVERRIDE_KEYWORD; import static org.jetbrains.jet.lexer.JetTokens.OVERRIDE_KEYWORD;
/** /**
@@ -113,8 +115,8 @@ public class DescriptorResolver {
} }
descriptor.setTypeParameterDescriptors(typeParameters); descriptor.setTypeParameterDescriptors(typeParameters);
Modality defaultModality = descriptor.getKind() == ClassKind.TRAIT ? Modality.ABSTRACT : Modality.FINAL; Modality defaultModality = descriptor.getKind() == ClassKind.TRAIT ? Modality.ABSTRACT : Modality.FINAL;
descriptor.setModality(ModifiersChecker.resolveModalityFromModifiers(classElement, defaultModality)); descriptor.setModality(resolveModalityFromModifiers(classElement, defaultModality));
descriptor.setVisibility(ModifiersChecker.resolveVisibilityFromModifiers(classElement)); descriptor.setVisibility(resolveVisibilityFromModifiers(classElement));
trace.record(BindingContext.CLASS, classElement, descriptor); trace.record(BindingContext.CLASS, classElement, descriptor);
} }
@@ -305,8 +307,8 @@ public class DescriptorResolver {
} }
} }
boolean hasBody = function.getBodyExpression() != null; boolean hasBody = function.getBodyExpression() != null;
Modality modality = ModifiersChecker.resolveModalityFromModifiers(function, getDefaultModality(containingDescriptor, hasBody)); Modality modality = resolveModalityFromModifiers(function, getDefaultModality(containingDescriptor, hasBody));
Visibility visibility = ModifiersChecker.resolveVisibilityFromModifiers(function, getDefaultVisibility(function, containingDescriptor)); Visibility visibility = resolveVisibilityFromModifiers(function, getDefaultVisibility(function, containingDescriptor));
JetModifierList modifierList = function.getModifierList(); JetModifierList modifierList = function.getModifierList();
boolean isInline = (modifierList != null) && modifierList.hasModifier(JetTokens.INLINE_KEYWORD); boolean isInline = (modifierList != null) && modifierList.hasModifier(JetTokens.INLINE_KEYWORD);
functionDescriptor.initialize( functionDescriptor.initialize(
@@ -802,7 +804,7 @@ public class DescriptorResolver {
containingDeclaration, containingDeclaration,
annotationResolver.getResolvedAnnotations(modifierList, trace), annotationResolver.getResolvedAnnotations(modifierList, trace),
Modality.FINAL, Modality.FINAL,
ModifiersChecker.resolveVisibilityFromModifiers(objectDeclaration), resolveVisibilityFromModifiers(objectDeclaration),
false, false,
JetPsiUtil.safeName(objectDeclaration.getName()), JetPsiUtil.safeName(objectDeclaration.getName()),
CallableMemberDescriptor.Kind.DECLARATION CallableMemberDescriptor.Kind.DECLARATION
@@ -895,9 +897,9 @@ public class DescriptorResolver {
boolean hasBody = hasBody(property); boolean hasBody = hasBody(property);
Modality modality = containingDeclaration instanceof ClassDescriptor Modality modality = containingDeclaration instanceof ClassDescriptor
? ModifiersChecker.resolveModalityFromModifiers(property, getDefaultModality(containingDeclaration, hasBody)) ? resolveModalityFromModifiers(property, getDefaultModality(containingDeclaration, hasBody))
: Modality.FINAL; : Modality.FINAL;
Visibility visibility = ModifiersChecker.resolveVisibilityFromModifiers(property, getDefaultVisibility(property, containingDeclaration)); Visibility visibility = resolveVisibilityFromModifiers(property, getDefaultVisibility(property, containingDeclaration));
PropertyDescriptor propertyDescriptor = new PropertyDescriptor( PropertyDescriptor propertyDescriptor = new PropertyDescriptor(
containingDeclaration, containingDeclaration,
annotationResolver.resolveAnnotations(scope, modifierList, trace), annotationResolver.resolveAnnotations(scope, modifierList, trace),
@@ -1022,8 +1024,8 @@ public class DescriptorResolver {
setterDescriptor = new PropertySetterDescriptor( setterDescriptor = new PropertySetterDescriptor(
propertyDescriptor, annotations, propertyDescriptor, annotations,
ModifiersChecker.resolveModalityFromModifiers(setter, propertyDescriptor.getModality()), resolveModalityFromModifiers(setter, propertyDescriptor.getModality()),
ModifiersChecker.resolveVisibilityFromModifiers(setter, propertyDescriptor.getVisibility()), resolveVisibilityFromModifiers(setter, propertyDescriptor.getVisibility()),
setter.getBodyExpression() != null, false, CallableMemberDescriptor.Kind.DECLARATION); setter.getBodyExpression() != null, false, CallableMemberDescriptor.Kind.DECLARATION);
if (parameter != null) { if (parameter != null) {
@@ -1108,8 +1110,8 @@ public class DescriptorResolver {
getterDescriptor = new PropertyGetterDescriptor( getterDescriptor = new PropertyGetterDescriptor(
propertyDescriptor, annotations, propertyDescriptor, annotations,
ModifiersChecker.resolveModalityFromModifiers(getter, propertyDescriptor.getModality()), resolveModalityFromModifiers(getter, propertyDescriptor.getModality()),
ModifiersChecker.resolveVisibilityFromModifiers(getter, propertyDescriptor.getVisibility()), resolveVisibilityFromModifiers(getter, propertyDescriptor.getVisibility()),
getter.getBodyExpression() != null, false, CallableMemberDescriptor.Kind.DECLARATION); getter.getBodyExpression() != null, false, CallableMemberDescriptor.Kind.DECLARATION);
getterDescriptor.initialize(returnType); getterDescriptor.initialize(returnType);
trace.record(BindingContext.PROPERTY_ACCESSOR, getter, getterDescriptor); trace.record(BindingContext.PROPERTY_ACCESSOR, getter, getterDescriptor);
@@ -1154,7 +1156,7 @@ public class DescriptorResolver {
constructorDescriptor, constructorDescriptor,
parameterScope, parameterScope,
valueParameters, trace), valueParameters, trace),
ModifiersChecker.resolveVisibilityFromModifiers(modifierList, getDefaultConstructorVisibility(classDescriptor))); resolveVisibilityFromModifiers(modifierList, getDefaultConstructorVisibility(classDescriptor)));
} }
@Nullable @Nullable
@@ -1196,8 +1198,8 @@ public class DescriptorResolver {
PropertyDescriptor propertyDescriptor = new PropertyDescriptor( PropertyDescriptor propertyDescriptor = new PropertyDescriptor(
classDescriptor, classDescriptor,
valueParameter.getAnnotations(), valueParameter.getAnnotations(),
ModifiersChecker.resolveModalityFromModifiers(parameter, Modality.FINAL), resolveModalityFromModifiers(parameter, Modality.FINAL),
ModifiersChecker.resolveVisibilityFromModifiers(parameter), resolveVisibilityFromModifiers(parameter),
isMutable, isMutable,
name, name,
CallableMemberDescriptor.Kind.DECLARATION CallableMemberDescriptor.Kind.DECLARATION
@@ -40,6 +40,8 @@ import org.jetbrains.jet.lang.types.TypeUtils;
import java.util.*; import java.util.*;
import static org.jetbrains.jet.lang.resolve.DescriptorUtils.getClassObjectName; import static org.jetbrains.jet.lang.resolve.DescriptorUtils.getClassObjectName;
import static org.jetbrains.jet.lang.resolve.ModifiersChecker.resolveModalityFromModifiers;
import static org.jetbrains.jet.lang.resolve.ModifiersChecker.resolveVisibilityFromModifiers;
/** /**
* @author abreslav * @author abreslav
@@ -108,10 +110,10 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements LazyDesc
else { else {
Modality defaultModality = kind == ClassKind.TRAIT ? Modality.ABSTRACT : Modality.FINAL; Modality defaultModality = kind == ClassKind.TRAIT ? Modality.ABSTRACT : Modality.FINAL;
JetModifierList modifierList = classLikeInfo.getModifierList(); JetModifierList modifierList = classLikeInfo.getModifierList();
this.modality = ModifiersChecker.resolveModalityFromModifiers(modifierList, defaultModality); this.modality = resolveModalityFromModifiers(modifierList, defaultModality);
} }
JetModifierList modifierList = classLikeInfo.getModifierList(); JetModifierList modifierList = classLikeInfo.getModifierList();
this.visibility = ModifiersChecker.resolveVisibilityFromModifiers(modifierList, Visibilities.INTERNAL); this.visibility = resolveVisibilityFromModifiers(modifierList, Visibilities.INTERNAL);
} }
@Override @Override