make parameter moduleConfiguration @NotNull

(in 'processImportReference')
This commit is contained in:
Svetlana Isakova
2012-09-07 18:22:02 +04:00
parent 1760d56017
commit 7c0bebe631
3 changed files with 12 additions and 8 deletions
@@ -44,9 +44,10 @@ public class QualifiedExpressionResolver {
public Collection<? extends DeclarationDescriptor> analyseImportReference( public Collection<? extends DeclarationDescriptor> analyseImportReference(
@NotNull JetImportDirective importDirective, @NotNull JetImportDirective importDirective,
@NotNull JetScope scope, @NotNull JetScope scope,
@NotNull BindingTrace trace @NotNull BindingTrace trace,
@NotNull ModuleConfiguration moduleConfiguration
) { ) {
return processImportReference(importDirective, scope, scope, Importer.DO_NOTHING, trace, null, false); return processImportReference(importDirective, scope, scope, Importer.DO_NOTHING, trace, moduleConfiguration, false);
} }
@NotNull @NotNull
@@ -56,7 +57,7 @@ public class QualifiedExpressionResolver {
@NotNull JetScope scopeToCheckVisibility, @NotNull JetScope scopeToCheckVisibility,
@NotNull Importer importer, @NotNull Importer importer,
@NotNull BindingTrace trace, @NotNull BindingTrace trace,
@Nullable ModuleConfiguration moduleConfiguration, @NotNull ModuleConfiguration moduleConfiguration,
boolean onlyClasses boolean onlyClasses
) { ) {
if (importDirective.isAbsoluteInRootNamespace()) { if (importDirective.isAbsoluteInRootNamespace()) {
@@ -23,6 +23,7 @@ import com.intellij.psi.tree.TokenSet;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.JetNodeTypes; import org.jetbrains.jet.JetNodeTypes;
import org.jetbrains.jet.lang.ModuleConfiguration;
import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.descriptors.*;
import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.jet.lang.resolve.*; import org.jetbrains.jet.lang.resolve.*;
@@ -181,11 +182,13 @@ public class ExpressionTypingUtils {
@NotNull Project project, @NotNull Project project,
@NotNull JetExpression receiverExpression, @NotNull JetExpression receiverExpression,
@NotNull JetType receiverType, @NotNull JetType receiverType,
@NotNull JetScope scope) { @NotNull JetScope scope,
@NotNull ModuleConfiguration moduleConfiguration
) {
JetImportDirective importDirective = JetPsiFactory.createImportDirective(project, callableFQN.getFqName()); JetImportDirective importDirective = JetPsiFactory.createImportDirective(project, callableFQN.getFqName());
Collection<? extends DeclarationDescriptor> declarationDescriptors = new QualifiedExpressionResolver().analyseImportReference(importDirective, scope, new BindingTraceContext()); Collection<? extends DeclarationDescriptor> declarationDescriptors = new QualifiedExpressionResolver()
.analyseImportReference(importDirective, scope, new BindingTraceContext(), moduleConfiguration);
List<CallableDescriptor> callableExtensionDescriptors = new ArrayList<CallableDescriptor>(); List<CallableDescriptor> callableExtensionDescriptors = new ArrayList<CallableDescriptor>();
ReceiverDescriptor receiverDescriptor = new ExpressionReceiver(receiverExpression, receiverType); ReceiverDescriptor receiverDescriptor = new ExpressionReceiver(receiverExpression, receiverType);
@@ -178,7 +178,7 @@ public class JetShortNamesCache extends PsiShortNamesCache {
if (functionFQN != null) { if (functionFQN != null) {
JetImportDirective importDirective = JetPsiFactory.createImportDirective(project, new ImportPath(functionFQN, false)); JetImportDirective importDirective = JetPsiFactory.createImportDirective(project, new ImportPath(functionFQN, false));
Collection<? extends DeclarationDescriptor> declarationDescriptors = new QualifiedExpressionResolver().analyseImportReference( Collection<? extends DeclarationDescriptor> declarationDescriptors = new QualifiedExpressionResolver().analyseImportReference(
importDirective, jetScope, new BindingTraceContext()); importDirective, jetScope, new BindingTraceContext(), resolveSession.getModuleConfiguration());
for (DeclarationDescriptor declarationDescriptor : declarationDescriptors) { for (DeclarationDescriptor declarationDescriptor : declarationDescriptors) {
if (declarationDescriptor instanceof FunctionDescriptor) { if (declarationDescriptor instanceof FunctionDescriptor) {
result.add((FunctionDescriptor) declarationDescriptor); result.add((FunctionDescriptor) declarationDescriptor);
@@ -277,7 +277,7 @@ public class JetShortNamesCache extends PsiShortNamesCache {
// Iterate through the function with attempt to resolve found functions // Iterate through the function with attempt to resolve found functions
for (FqName functionFQN : functionFQNs) { for (FqName functionFQN : functionFQNs) {
for (CallableDescriptor functionDescriptor : ExpressionTypingUtils.canFindSuitableCall( for (CallableDescriptor functionDescriptor : ExpressionTypingUtils.canFindSuitableCall(
functionFQN, project, receiverExpression, expressionType, scope)) { functionFQN, project, receiverExpression, expressionType, scope, resolveSession.getModuleConfiguration())) {
resultDescriptors.add(functionDescriptor); resultDescriptors.add(functionDescriptor);
} }