Minor refactorings related to PackagePartProvider and implementations

- Document what exactly should findPackageParts return
- Make EMPTY a named object instead of a val in the companion
- Do not use JvmPackagePartProvider in tests where Empty works fine
- Add a couple default values to arguments of setupResolverForProject
This commit is contained in:
Alexander Udalov
2016-09-29 18:51:40 +03:00
parent 97f2051a03
commit 0ed9897b03
9 changed files with 21 additions and 35 deletions
@@ -53,7 +53,7 @@ public class GenerationUtils {
@NotNull
public static GenerationState compileFiles(@NotNull List<KtFile> files, @Nullable KotlinCoreEnvironment environment) {
PackagePartProvider packagePartProvider =
environment == null ? PackagePartProvider.Companion.getEMPTY() : new JvmPackagePartProvider(environment);
environment == null ? PackagePartProvider.Empty.INSTANCE : new JvmPackagePartProvider(environment);
CompilerConfiguration configuration =
environment == null ? KotlinTestUtils.newConfiguration() : environment.getConfiguration();
@@ -20,12 +20,10 @@ import com.intellij.openapi.project.Project
import com.intellij.psi.search.GlobalSearchScope
import org.jetbrains.kotlin.analyzer.ModuleContent
import org.jetbrains.kotlin.analyzer.ModuleInfo
import org.jetbrains.kotlin.builtins.DefaultBuiltIns
import org.jetbrains.kotlin.container.get
import org.jetbrains.kotlin.context.ProjectContext
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.resolve.CompilerEnvironment
import org.jetbrains.kotlin.resolve.jvm.JvmAnalyzerFacade
import org.jetbrains.kotlin.resolve.jvm.JvmPlatformParameters
@@ -40,9 +38,7 @@ fun createResolveSessionForFiles(
"test",
projectContext, listOf(testModule),
{ ModuleContent(syntheticFiles, GlobalSearchScope.allScope(project)) },
JvmPlatformParameters { testModule },
CompilerEnvironment,
DefaultBuiltIns.Instance
JvmPlatformParameters { testModule }
)
return resolverForProject.resolverForModule(testModule).componentProvider.get<ResolveSession>()
}