diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedDeclarationProviderFactory.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedDeclarationProviderFactory.java index 980eb8fabce..36365a43846 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedDeclarationProviderFactory.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedDeclarationProviderFactory.java @@ -17,24 +17,21 @@ package org.jetbrains.jet.lang.resolve.lazy.declarations; import com.google.common.base.Predicate; -import com.google.common.collect.*; -import com.intellij.psi.NavigatablePsiElement; -import com.intellij.util.Function; -import com.intellij.util.containers.ContainerUtil; +import com.google.common.collect.Collections2; +import com.google.common.collect.HashMultimap; +import com.google.common.collect.Multimap; +import com.google.common.collect.Sets; import kotlin.Function0; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetPackageDirective; -import org.jetbrains.jet.lang.psi.JetPsiUtil; import org.jetbrains.jet.lang.resolve.lazy.data.JetClassLikeInfo; import org.jetbrains.jet.lang.resolve.name.FqName; -import org.jetbrains.jet.lang.resolve.name.NamePackage; import org.jetbrains.jet.storage.NotNullLazyValue; import org.jetbrains.jet.storage.StorageManager; import java.util.Collection; -import java.util.Collections; import java.util.Set; public class FileBasedDeclarationProviderFactory extends AbstractDeclarationProviderFactory { @@ -94,27 +91,6 @@ public class FileBasedDeclarationProviderFactory extends AbstractDeclarationProv }); } - /*package*/ Collection getPackageDeclarations(@NotNull final FqName fqName) { - if (fqName.isRoot()) { - return Collections.emptyList(); - } - - Collection resultElements = Lists.newArrayList(); - for (FqName declaredPackage : index.invoke().filesByPackage.keys()) { - if (NamePackage.isSubpackageOf(declaredPackage, fqName)) { - Collection files = index.invoke().filesByPackage.get(declaredPackage); - resultElements.addAll(ContainerUtil.map(files, new Function() { - @Override - public NavigatablePsiElement fun(JetFile file) { - return JetPsiUtil.getPackageReference(file, NamePackage.numberOfSegments(fqName) - 1); - } - })); - } - } - - return resultElements; - } - @Nullable @Override protected PackageMemberDeclarationProvider createPackageMemberDeclarationProvider(@NotNull FqName packageFqName) { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedPackageMemberDeclarationProvider.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedPackageMemberDeclarationProvider.java index e6149a930ea..e5281d23bf2 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedPackageMemberDeclarationProvider.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/FileBasedPackageMemberDeclarationProvider.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.resolve.lazy.declarations; -import com.intellij.psi.NavigatablePsiElement; import kotlin.Function0; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.psi.JetDeclaration; @@ -69,12 +68,6 @@ public class FileBasedPackageMemberDeclarationProvider extends AbstractPsiBasedD return allDeclaredSubPackages.invoke(); } - @NotNull - @Override - public Collection getPackageDeclarations(@NotNull FqName fqName) { - return factory.getPackageDeclarations(fqName); - } - @NotNull @Override public Collection getPackageFiles() { diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/PackageMemberDeclarationProvider.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/PackageMemberDeclarationProvider.java index 3d6530287ce..e8c769d21ea 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/PackageMemberDeclarationProvider.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/lazy/declarations/PackageMemberDeclarationProvider.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.resolve.lazy.declarations; -import com.intellij.psi.NavigatablePsiElement; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.ReadOnly; import org.jetbrains.jet.lang.psi.JetFile; @@ -30,10 +29,6 @@ public interface PackageMemberDeclarationProvider extends DeclarationProvider { @NotNull Collection getAllDeclaredSubPackages(); - @ReadOnly - @NotNull - Collection getPackageDeclarations(@NotNull FqName fqName); - @ReadOnly @NotNull Collection getPackageFiles(); diff --git a/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/CombinedPackageMemberDeclarationProvider.kt b/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/CombinedPackageMemberDeclarationProvider.kt index f3b9396376e..8e6b9151486 100644 --- a/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/CombinedPackageMemberDeclarationProvider.kt +++ b/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/CombinedPackageMemberDeclarationProvider.kt @@ -16,18 +16,12 @@ package org.jetbrains.jet.plugin.stubindex.resolve -import com.intellij.psi.NavigatablePsiElement -import org.jetbrains.jet.lang.psi.* -import org.jetbrains.jet.lang.resolve.lazy.declarations.FileBasedPackageMemberDeclarationProvider import org.jetbrains.jet.lang.resolve.lazy.declarations.PackageMemberDeclarationProvider -import org.jetbrains.jet.lang.resolve.name.FqName import org.jetbrains.jet.lang.resolve.name.Name public class CombinedPackageMemberDeclarationProvider(val providers: Collection) : PackageMemberDeclarationProvider { override fun getAllDeclaredSubPackages() = providers.flatMap { it.getAllDeclaredSubPackages() } - override fun getPackageDeclarations(fqName: FqName) = providers.flatMap { it.getPackageDeclarations(fqName) } - override fun getPackageFiles() = providers.flatMap { it.getPackageFiles() } override fun getAllDeclarations() = providers.flatMap { it.getAllDeclarations() } diff --git a/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/StubBasedPackageMemberDeclarationProvider.kt b/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/StubBasedPackageMemberDeclarationProvider.kt index 9d6604dadfe..396ed15f5d0 100644 --- a/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/StubBasedPackageMemberDeclarationProvider.kt +++ b/idea/src/org/jetbrains/jet/plugin/stubindex/resolve/StubBasedPackageMemberDeclarationProvider.kt @@ -17,20 +17,15 @@ package org.jetbrains.jet.plugin.stubindex.resolve import com.intellij.openapi.project.Project -import com.intellij.psi.NavigatablePsiElement import com.intellij.psi.search.GlobalSearchScope import com.intellij.psi.stubs.StringStubIndexExtension import org.jetbrains.jet.lang.psi.* import org.jetbrains.jet.lang.resolve.lazy.declarations.PackageMemberDeclarationProvider import org.jetbrains.jet.lang.resolve.name.FqName import org.jetbrains.jet.lang.resolve.name.Name -import org.jetbrains.jet.plugin.stubindex.JetAllPackagesIndex import org.jetbrains.jet.plugin.stubindex.JetFullClassNameIndex import org.jetbrains.jet.plugin.stubindex.JetTopLevelFunctionsFqnNameIndex import org.jetbrains.jet.plugin.stubindex.JetTopLevelPropertiesFqnNameIndex -import java.util.* -import org.jetbrains.jet.plugin.stubindex.JetSourceFilterScope.kotlinSources -import org.jetbrains.jet.lang.resolve.name.numberOfSegments import org.jetbrains.jet.plugin.stubindex.PackageIndexUtil public class StubBasedPackageMemberDeclarationProvider( @@ -63,18 +58,6 @@ public class StubBasedPackageMemberDeclarationProvider( return PackageIndexUtil.getSubPackageFqNames(fqName, searchScope, project) } - override fun getPackageDeclarations(fqName: FqName): Collection { - if (fqName.isRoot()) { - return Collections.emptyList() - } - - val files = JetAllPackagesIndex.getInstance().get(fqName.asString(), project, searchScope) - return files.map { - file -> - JetPsiUtil.getPackageReference(file, fqName.numberOfSegments() - 1) - }.filterNotNull() - } - override fun getPackageFiles(): Collection { return PackageIndexUtil.findFilesWithExactPackage(fqName, searchScope, project) } diff --git a/idea/tests/org/jetbrains/jet/plugin/stubs/resolve/JetStubResolveTest.java b/idea/tests/org/jetbrains/jet/plugin/stubs/resolve/JetStubResolveTest.java index b520aac6cc3..cfcb26598cf 100644 --- a/idea/tests/org/jetbrains/jet/plugin/stubs/resolve/JetStubResolveTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/stubs/resolve/JetStubResolveTest.java @@ -81,16 +81,4 @@ public class JetStubResolveTest extends LightCodeInsightFixtureTestCase { assertSize(1, testProperties); assertEquals("val test = 12", testProperties.get(0).getText()); } - - public void testGetPackageByIntermediatePartition() { - myFixture.configureByText(JetFileType.INSTANCE, "package first.second.third"); - - StubBasedPackageMemberDeclarationProvider provider = new StubBasedPackageMemberDeclarationProvider( - new FqName("first.second"), getProject(), GlobalSearchScope.projectScope(getProject())); - - Collection packageDeclarations = provider.getPackageDeclarations(new FqName("first.second")); - - assertSize(1, packageDeclarations); - assertEquals("second", packageDeclarations.iterator().next().getText()); - } }