Refactor: extract JavaBaseScope getResolver() method
This commit is contained in:
+9
-3
@@ -25,6 +25,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.resolve.DescriptorUtils;
|
||||
import org.jetbrains.jet.lang.resolve.java.JavaDescriptorResolver;
|
||||
import org.jetbrains.jet.lang.resolve.java.JavaSemanticServices;
|
||||
import org.jetbrains.jet.lang.resolve.java.descriptor.JavaNamespaceDescriptor;
|
||||
import org.jetbrains.jet.lang.resolve.java.provider.*;
|
||||
@@ -89,7 +90,7 @@ public abstract class JavaBaseScope extends JetScopeImpl {
|
||||
|
||||
@NotNull
|
||||
private Set<VariableDescriptor> computePropertyDescriptors(@NotNull Name name) {
|
||||
return semanticServices.getDescriptorResolver().resolveFieldGroupByName(name, declarationProvider, descriptor);
|
||||
return getResolver().resolveFieldGroupByName(name, declarationProvider, descriptor);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -158,11 +159,16 @@ public abstract class JavaBaseScope extends JetScopeImpl {
|
||||
) {
|
||||
// TODO: Trying to hack the situation when we produce namespace descriptor for java class and still want to see inner classes
|
||||
if (descriptor instanceof JavaNamespaceDescriptor) {
|
||||
result.addAll(semanticServices.getDescriptorResolver().resolveInnerClasses(descriptor, psiClass, false));
|
||||
result.addAll(getResolver().resolveInnerClasses(descriptor, psiClass, false));
|
||||
}
|
||||
else {
|
||||
result.addAll(semanticServices.getDescriptorResolver().resolveInnerClasses(
|
||||
result.addAll(getResolver().resolveInnerClasses(
|
||||
descriptor, psiClass, ((ClassPsiDeclarationProviderImpl) declarationProvider).isStaticMembers()));
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
protected JavaDescriptorResolver getResolver() {
|
||||
return semanticServices.getDescriptorResolver();
|
||||
}
|
||||
}
|
||||
|
||||
+2
-8
@@ -32,11 +32,6 @@ import java.util.Collection;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* Class static of instance members.
|
||||
*
|
||||
* @author abreslav
|
||||
*/
|
||||
public abstract class JavaClassMembersScope extends JavaBaseScope {
|
||||
@NotNull
|
||||
private final Map<Name, ClassifierDescriptor> classifiers = Maps.newHashMap();
|
||||
@@ -73,7 +68,7 @@ public abstract class JavaClassMembersScope extends JavaBaseScope {
|
||||
for (PsiClass innerClass : classPsiDeclarationProvider.getPsiClass().getAllInnerClasses()) {
|
||||
if (name.getName().equals(innerClass.getName())) {
|
||||
if (innerClass.hasModifierProperty(PsiModifier.STATIC) != classPsiDeclarationProvider.isStaticMembers()) return null;
|
||||
ClassDescriptor classDescriptor = semanticServices.getDescriptorResolver()
|
||||
ClassDescriptor classDescriptor = getResolver()
|
||||
.resolveClass(new FqName(innerClass.getQualifiedName()), DescriptorSearchRule.IGNORE_IF_FOUND_IN_KOTLIN);
|
||||
if (classDescriptor != null) {
|
||||
return classDescriptor;
|
||||
@@ -86,7 +81,6 @@ public abstract class JavaClassMembersScope extends JavaBaseScope {
|
||||
@NotNull
|
||||
@Override
|
||||
protected Set<FunctionDescriptor> computeFunctionDescriptor(@NotNull Name name) {
|
||||
return semanticServices.getDescriptorResolver()
|
||||
.resolveFunctionGroup(name, classPsiDeclarationProvider, descriptor);
|
||||
return getResolver().resolveFunctionGroup(name, classPsiDeclarationProvider, descriptor);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-2
@@ -43,7 +43,6 @@ public final class JavaClassStaticMembersScope extends JavaPackageScope {
|
||||
@NotNull
|
||||
@Override
|
||||
protected Set<FunctionDescriptor> computeFunctionDescriptor(@NotNull Name name) {
|
||||
return semanticServices.getDescriptorResolver()
|
||||
.resolveFunctionGroup(name, declarationProvider, descriptor);
|
||||
return getResolver().resolveFunctionGroup(name, declarationProvider, descriptor);
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -52,18 +52,18 @@ public abstract class JavaPackageScope extends JavaBaseScope {
|
||||
|
||||
@Override
|
||||
public ClassifierDescriptor getClassifier(@NotNull Name name) {
|
||||
return semanticServices.getDescriptorResolver().resolveClass(packageFQN.child(name), DescriptorSearchRule.IGNORE_IF_FOUND_IN_KOTLIN);
|
||||
return getResolver().resolveClass(packageFQN.child(name), DescriptorSearchRule.IGNORE_IF_FOUND_IN_KOTLIN);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ClassDescriptor getObjectDescriptor(@NotNull Name name) {
|
||||
//TODO: check that class is an object
|
||||
return semanticServices.getDescriptorResolver().resolveClass(packageFQN.child(name), DescriptorSearchRule.IGNORE_IF_FOUND_IN_KOTLIN);
|
||||
return getResolver().resolveClass(packageFQN.child(name), DescriptorSearchRule.IGNORE_IF_FOUND_IN_KOTLIN);
|
||||
}
|
||||
|
||||
@Override
|
||||
public NamespaceDescriptor getNamespace(@NotNull Name name) {
|
||||
return semanticServices.getDescriptorResolver().resolveNamespace(packageFQN.child(name), DescriptorSearchRule.INCLUDE_KOTLIN);
|
||||
return getResolver().resolveNamespace(packageFQN.child(name), DescriptorSearchRule.INCLUDE_KOTLIN);
|
||||
}
|
||||
|
||||
//TODO: remove this method
|
||||
|
||||
+1
-2
@@ -43,7 +43,6 @@ public final class JavaScopeForKotlinNamespace extends JavaPackageScope {
|
||||
@NotNull
|
||||
@Override
|
||||
protected Set<FunctionDescriptor> computeFunctionDescriptor(@NotNull Name name) {
|
||||
return semanticServices.getDescriptorResolver()
|
||||
.resolveFunctionGroup(name, declarationProvider, descriptor);
|
||||
return getResolver().resolveFunctionGroup(name, declarationProvider, descriptor);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user