diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/ResolveSessionUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/ResolveSessionUtils.java index f75a1319b93..e5dc516c178 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/ResolveSessionUtils.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/ResolveSessionUtils.java @@ -23,6 +23,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.ClassDescriptor; import org.jetbrains.jet.lang.descriptors.ClassifierDescriptor; +import org.jetbrains.jet.lang.descriptors.ModuleDescriptor; import org.jetbrains.jet.lang.descriptors.PackageViewDescriptor; import org.jetbrains.jet.lang.psi.JetNamedDeclaration; import org.jetbrains.jet.lang.psi.JetNamedDeclarationUtil; @@ -57,13 +58,13 @@ public class ResolveSessionUtils { } @NotNull - public static Collection getClassDescriptorsByFqName(@NotNull KotlinCodeAnalyzer analyzer, @NotNull FqName fqName) { - return getClassOrObjectDescriptorsByFqName(analyzer, fqName, NON_SINGLETON_FILTER); + public static Collection getClassDescriptorsByFqName(@NotNull ModuleDescriptor moduleDescriptor, @NotNull FqName fqName) { + return getClassOrObjectDescriptorsByFqName(moduleDescriptor, fqName, NON_SINGLETON_FILTER); } @NotNull public static Collection getClassOrObjectDescriptorsByFqName( - @NotNull KotlinCodeAnalyzer analyzer, + @NotNull ModuleDescriptor moduleDescriptor, @NotNull FqName fqName, @NotNull Predicate filter ) { @@ -73,7 +74,7 @@ public class ResolveSessionUtils { FqName packageFqName = fqName.parent(); while (true) { - PackageViewDescriptor packageDescriptor = analyzer.getModuleDescriptor().getPackage(packageFqName); + PackageViewDescriptor packageDescriptor = moduleDescriptor.getPackage(packageFqName); if (packageDescriptor != null) { FqName classInPackagePath = NamePackage.tail(fqName, packageFqName); ClassDescriptor classDescriptor = findByQualifiedName(packageDescriptor.getMemberScope(), classInPackagePath, filter); diff --git a/idea/src/org/jetbrains/jet/plugin/caches/KotlinIndicesHelper.kt b/idea/src/org/jetbrains/jet/plugin/caches/KotlinIndicesHelper.kt index 21211c46750..942fd9be07e 100644 --- a/idea/src/org/jetbrains/jet/plugin/caches/KotlinIndicesHelper.kt +++ b/idea/src/org/jetbrains/jet/plugin/caches/KotlinIndicesHelper.kt @@ -52,13 +52,13 @@ public class KotlinIndicesHelper(private val project: Project) { val topObjects = JetTopLevelObjectShortNameIndex.getInstance().get(name, project, scope) for (objectDeclaration in topObjects) { val fqName = objectDeclaration.getFqName() ?: error("Local object declaration in JetTopLevelShortObjectNameIndex:${objectDeclaration.getText()}") - result.addAll(ResolveSessionUtils.getClassOrObjectDescriptorsByFqName(resolveSession, fqName, ResolveSessionUtils.SINGLETON_FILTER)) + result.addAll(ResolveSessionUtils.getClassOrObjectDescriptorsByFqName(resolveSession.getModuleDescriptor(), fqName, ResolveSessionUtils.SINGLETON_FILTER)) } for (psiClass in JetFromJavaDescriptorHelper.getCompiledClassesForTopLevelObjects(project, scope)) { val qualifiedName = psiClass.getQualifiedName() if (qualifiedName != null) { - result.addAll(ResolveSessionUtils.getClassOrObjectDescriptorsByFqName(resolveSession, FqName(qualifiedName), ResolveSessionUtils.SINGLETON_FILTER)) + result.addAll(ResolveSessionUtils.getClassOrObjectDescriptorsByFqName(resolveSession.getModuleDescriptor(), FqName(qualifiedName), ResolveSessionUtils.SINGLETON_FILTER)) } } @@ -187,7 +187,7 @@ public class KotlinIndicesHelper(private val project: Project) { } // Note: Can't search with psi element as analyzer could be built over temp files - return ResolveSessionUtils.getClassDescriptorsByFqName(analyzer, classFQName) + return ResolveSessionUtils.getClassDescriptorsByFqName(analyzer.getModuleDescriptor(), classFQName) } private fun findTopLevelCallables(fqName: FqName, context: JetExpression, jetScope: JetScope, resolveSession: ResolveSessionForBodies): Collection { diff --git a/idea/src/org/jetbrains/jet/plugin/completion/TypesCompletion.kt b/idea/src/org/jetbrains/jet/plugin/completion/TypesCompletion.kt index 38c95b417c6..4f632cc51b6 100644 --- a/idea/src/org/jetbrains/jet/plugin/completion/TypesCompletion.kt +++ b/idea/src/org/jetbrains/jet/plugin/completion/TypesCompletion.kt @@ -81,7 +81,7 @@ class TypesCompletion(val parameters: CompletionParameters, val resolveSession: if (JetFromJavaDescriptorHelper.getCompiledClassKind(aClass) != ClassKind.CLASS_OBJECT) { val qualifiedName = aClass.getQualifiedName() if (qualifiedName != null) { - result.addDescriptorElements(ResolveSessionUtils.getClassDescriptorsByFqName(resolveSession, FqName(qualifiedName))) + result.addDescriptorElements(ResolveSessionUtils.getClassDescriptorsByFqName(resolveSession.getModuleDescriptor(), FqName(qualifiedName))) } }