PackageFacadeProvider refactoring

This commit is contained in:
Michael Bogdanov
2015-08-27 15:13:42 +03:00
parent 843241848f
commit c274ceffe8
36 changed files with 130 additions and 150 deletions
@@ -48,7 +48,7 @@ import org.jetbrains.kotlin.resolve.calls.model.MutableResolvedCall;
import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall;
import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics;
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.resolve.lazy.LazyResolveTestUtil;
import org.jetbrains.kotlin.storage.ExceptionTracker;
import org.jetbrains.kotlin.storage.LockBasedStorageManager;
@@ -248,7 +248,7 @@ public abstract class AbstractJetDiagnosticsTest extends BaseDiagnosticsTest {
moduleTrace,
null,
null,
new JvmPackageMappingProvider(getEnvironment())
new JvmPackageFacadeProvider(getEnvironment())
);
}
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.codegen.state.GenerationState;
import org.jetbrains.kotlin.config.CompilerConfiguration;
import org.jetbrains.kotlin.resolve.AnalyzingUtils;
import org.jetbrains.kotlin.resolve.BindingTraceContext;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
import org.jetbrains.kotlin.test.JetTestUtils;
import org.jetbrains.kotlin.utils.UtilsPackage;
@@ -53,7 +53,7 @@ public class CodegenTestUtil {
AnalysisResult analysisResult = JvmResolveUtil.analyzeFilesWithJavaIntegrationAndCheckForErrors(
environment.getProject(),
files.getPsiFiles(),
new JvmPackageMappingProvider(environment)
new JvmPackageFacadeProvider(environment)
);
analysisResult.throwIfError();
AnalyzingUtils.throwExceptionOnErrors(analysisResult.getBindingContext());
@@ -19,11 +19,11 @@ package org.jetbrains.kotlin.codegen;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.analyzer.AnalysisResult;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
import org.jetbrains.kotlin.codegen.state.GenerationState;
import org.jetbrains.kotlin.load.java.lazy.PackageMappingProvider;
import org.jetbrains.kotlin.descriptors.PackageFacadeProvider;
import org.jetbrains.kotlin.psi.JetFile;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
import java.util.Collections;
@@ -48,20 +48,21 @@ public class GenerationUtils {
@NotNull KotlinCoreEnvironment environment
) {
AnalysisResult analysisResult =
JvmResolveUtil.analyzeOneFileWithJavaIntegrationAndCheckForErrors(psiFile, new JvmPackageMappingProvider(environment));
JvmResolveUtil.analyzeOneFileWithJavaIntegrationAndCheckForErrors(psiFile, new JvmPackageFacadeProvider(environment));
return compileFilesGetGenerationState(psiFile.getProject(), analysisResult, Collections.singletonList(psiFile));
}
@NotNull
public static GenerationState compileManyFilesGetGenerationStateForTest(@NotNull Project project, @NotNull List<JetFile> files) {
return compileManyFilesGetGenerationStateForTest(project, files, PackageMappingProvider.EMPTY);
return compileManyFilesGetGenerationStateForTest(project, files, PackageFacadeProvider.EMPTY);
}
@NotNull
public static GenerationState compileManyFilesGetGenerationStateForTest(@NotNull Project project, @NotNull List<JetFile> files,
@NotNull PackageMappingProvider packageMappingProvider) {
@NotNull PackageFacadeProvider packageFacadeProvider
) {
AnalysisResult analysisResult = JvmResolveUtil.analyzeFilesWithJavaIntegrationAndCheckForErrors(
project, files, packageMappingProvider);
project, files, packageFacadeProvider);
return compileFilesGetGenerationState(project, analysisResult, files);
}
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.codegen.CodegenTestCase;
import org.jetbrains.kotlin.codegen.GenerationUtils;
import org.jetbrains.kotlin.config.CompilerConfiguration;
import org.jetbrains.kotlin.psi.JetFile;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.test.ConfigurationKind;
import org.jetbrains.kotlin.test.InTextDirectivesUtils;
import org.jetbrains.kotlin.test.JetTestUtils;
@@ -155,7 +155,7 @@ public abstract class AbstractBlackBoxCodegenTest extends CodegenTestCase {
loadFiles(ArrayUtil.toStringArray(ktFilePaths));
classFileFactory =
GenerationUtils.compileManyFilesGetGenerationStateForTest(myEnvironment.getProject(), myFiles.getPsiFiles(),
new JvmPackageMappingProvider(myEnvironment)).getFactory();
new JvmPackageFacadeProvider(myEnvironment)).getFactory();
File kotlinOut = JetTestUtils.tmpDir(toString());
OutputUtilsPackage.writeAllTo(classFileFactory, kotlinOut);
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.resolve.BindingTrace;
import org.jetbrains.kotlin.resolve.DescriptorUtils;
import org.jetbrains.kotlin.resolve.TopDownAnalysisMode;
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedClassDescriptor;
import org.jetbrains.kotlin.test.ConfigurationKind;
@@ -156,7 +156,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir {
environment.getSourceFiles(),
trace,
TopDownAnalysisMode.TopLevelDeclarations,
new JvmPackageMappingProvider(environment)
new JvmPackageFacadeProvider(environment)
);
PackageViewDescriptor packageView = moduleContext.getModule().getPackage(TEST_PACKAGE_FQNAME);
@@ -35,7 +35,6 @@ import org.jetbrains.kotlin.resolve.BindingContext;
import org.jetbrains.kotlin.resolve.BindingTrace;
import org.jetbrains.kotlin.resolve.DescriptorUtils;
import org.jetbrains.kotlin.resolve.jvm.kotlinSignature.TypeTransformingVisitor;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.resolve.lazy.LazyResolveTestUtil;
import org.jetbrains.kotlin.resolve.scopes.JetScope;
@@ -23,7 +23,7 @@ import com.intellij.openapi.util.io.FileUtil
import org.jetbrains.kotlin.cli.common.output.outputUtils.writeAllTo
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
import org.jetbrains.kotlin.codegen.GenerationUtils
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider
import org.jetbrains.kotlin.test.JetTestUtils
import org.jetbrains.kotlin.test.TestCaseWithTmpdir
import org.jetbrains.kotlin.utils.join
@@ -38,7 +38,7 @@ import org.jetbrains.kotlin.name.Name;
import org.jetbrains.kotlin.psi.JetFile;
import org.jetbrains.kotlin.resolve.BindingContext;
import org.jetbrains.kotlin.resolve.BindingTrace;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
import org.jetbrains.kotlin.resolve.lazy.LazyResolveTestUtil;
import org.jetbrains.kotlin.test.ConfigurationKind;
@@ -141,7 +141,7 @@ public final class LoadDescriptorUtil {
}
});
AnalysisResult result = JvmResolveUtil.analyzeFilesWithJavaIntegrationAndCheckForErrors(
jetCoreEnvironment.getProject(), jetFiles, new JvmPackageMappingProvider(jetCoreEnvironment));
jetCoreEnvironment.getProject(), jetFiles, new JvmPackageFacadeProvider(jetCoreEnvironment));
return new JetFilesAndAnalysisResult(jetFiles, result);
}
@@ -38,7 +38,7 @@ import org.jetbrains.kotlin.resolve.CompilerEnvironment
import org.jetbrains.kotlin.resolve.descriptorUtil.module
import org.jetbrains.kotlin.resolve.jvm.JvmAnalyzerFacade
import org.jetbrains.kotlin.resolve.jvm.JvmPlatformParameters
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider
import org.jetbrains.kotlin.test.JetTestUtils
import org.jetbrains.kotlin.types.ErrorUtils
import org.junit.Assert
@@ -67,7 +67,7 @@ public class MultiModuleJavaAnalysisCustomTest : UsefulTestCase() {
modules.first { it._name == moduleName }
},
CompilerEnvironment,
packageMappingProviderFactory = { a, b -> JvmPackageMappingProvider(environment)}
packageFacadeProviderFactory = { a, b -> JvmPackageFacadeProvider(environment) }
)
performChecks(resolverForProject, modules)
@@ -20,9 +20,10 @@ import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.analyzer.AnalysisResult;
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
import org.jetbrains.kotlin.context.ModuleContext;
import org.jetbrains.kotlin.load.java.lazy.PackageMappingProvider;
import org.jetbrains.kotlin.descriptors.PackageFacadeProvider;
import org.jetbrains.kotlin.psi.JetFile;
import org.jetbrains.kotlin.resolve.AnalyzingUtils;
import org.jetbrains.kotlin.resolve.BindingTrace;
@@ -36,11 +37,11 @@ public class JvmResolveUtil {
public static String TEST_MODULE_NAME = "java-integration-test";
@NotNull
public static AnalysisResult analyzeOneFileWithJavaIntegrationAndCheckForErrors(@NotNull JetFile file) {
return analyzeOneFileWithJavaIntegrationAndCheckForErrors(file, PackageMappingProvider.EMPTY);
return analyzeOneFileWithJavaIntegrationAndCheckForErrors(file, PackageFacadeProvider.EMPTY);
}
@NotNull
public static AnalysisResult analyzeOneFileWithJavaIntegrationAndCheckForErrors(@NotNull JetFile file, @NotNull PackageMappingProvider provider) {
public static AnalysisResult analyzeOneFileWithJavaIntegrationAndCheckForErrors(@NotNull JetFile file, @NotNull PackageFacadeProvider provider) {
AnalyzingUtils.checkForSyntacticErrors(file);
AnalysisResult analysisResult = analyzeOneFileWithJavaIntegration(file, provider);
@@ -52,17 +53,17 @@ public class JvmResolveUtil {
@NotNull
public static AnalysisResult analyzeOneFileWithJavaIntegration(@NotNull JetFile file, @NotNull KotlinCoreEnvironment environment) {
return analyzeOneFileWithJavaIntegration(file, new JvmPackageMappingProvider(environment));
return analyzeOneFileWithJavaIntegration(file, new JvmPackageFacadeProvider(environment));
}
@NotNull
public static AnalysisResult analyzeOneFileWithJavaIntegration(@NotNull JetFile file, @NotNull PackageMappingProvider provider) {
public static AnalysisResult analyzeOneFileWithJavaIntegration(@NotNull JetFile file, @NotNull PackageFacadeProvider provider) {
return analyzeFilesWithJavaIntegration(file.getProject(), Collections.singleton(file), provider);
}
@NotNull
public static AnalysisResult analyzeOneFileWithJavaIntegration(@NotNull JetFile file) {
return analyzeOneFileWithJavaIntegration(file, PackageMappingProvider.EMPTY);
return analyzeOneFileWithJavaIntegration(file, PackageFacadeProvider.EMPTY);
}
@NotNull
@@ -70,20 +71,20 @@ public class JvmResolveUtil {
@NotNull Project project,
@NotNull Collection<JetFile> files
) {
return analyzeFilesWithJavaIntegrationAndCheckForErrors(project, files, PackageMappingProvider.EMPTY);
return analyzeFilesWithJavaIntegrationAndCheckForErrors(project, files, PackageFacadeProvider.EMPTY);
}
@NotNull
public static AnalysisResult analyzeFilesWithJavaIntegrationAndCheckForErrors(
@NotNull Project project,
@NotNull Collection<JetFile> files,
@NotNull PackageMappingProvider packageMappingProvider
@NotNull PackageFacadeProvider packageFacadeProvider
) {
for (JetFile file : files) {
AnalyzingUtils.checkForSyntacticErrors(file);
}
AnalysisResult analysisResult = analyzeFilesWithJavaIntegration(project, files, packageMappingProvider);
AnalysisResult analysisResult = analyzeFilesWithJavaIntegration(project, files, packageFacadeProvider);
AnalyzingUtils.throwExceptionOnErrors(analysisResult.getBindingContext());
@@ -96,20 +97,21 @@ public class JvmResolveUtil {
@NotNull Collection<JetFile> files,
@NotNull KotlinCoreEnvironment environment
) {
return analyzeFilesWithJavaIntegration(project, files, new JvmPackageMappingProvider(environment));
return analyzeFilesWithJavaIntegration(project, files, new JvmPackageFacadeProvider(environment));
}
@NotNull
public static AnalysisResult analyzeFilesWithJavaIntegration(
@NotNull Project project,
@NotNull Collection<JetFile> files,
@NotNull PackageMappingProvider packageMappingProvider
@NotNull PackageFacadeProvider packageFacadeProvider
) {
ModuleContext moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, TEST_MODULE_NAME);
BindingTrace trace = new CliLightClassGenerationSupport.CliBindingTrace();
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegrationWithCustomContext(moduleContext, files, trace, null, null, packageMappingProvider);
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegrationWithCustomContext(moduleContext, files, trace, null, null,
packageFacadeProvider);
}
}
@@ -20,10 +20,10 @@ import com.google.common.collect.Sets;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackageFacadeProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
import org.jetbrains.kotlin.context.ModuleContext;
import org.jetbrains.kotlin.descriptors.ModuleDescriptor;
import org.jetbrains.kotlin.load.java.lazy.PackageMappingProvider;
import org.jetbrains.kotlin.name.Name;
import org.jetbrains.kotlin.name.SpecialNames;
import org.jetbrains.kotlin.psi.JetFile;
@@ -62,7 +62,7 @@ public class LazyResolveTestUtil {
TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegrationNoIncremental(
moduleContext, sourceFiles, trace, TopDownAnalysisMode.TopLevelDeclarations,
new JvmPackageMappingProvider(environment)
new JvmPackageFacadeProvider(environment)
);
return moduleContext.getModule();
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.frontend.java.di.createContainerForTopDownAnalyzerFo
import org.jetbrains.kotlin.incremental.components.LookupTracker
import org.jetbrains.kotlin.jvm.compiler.LoadDescriptorUtil
import org.jetbrains.kotlin.load.java.JvmAnnotationNames
import org.jetbrains.kotlin.load.java.lazy.PackageMappingProvider
import org.jetbrains.kotlin.descriptors.PackageFacadeProvider
import org.jetbrains.kotlin.load.java.structure.reflect.classId
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM
import org.jetbrains.kotlin.resolve.lazy.declarations.FileBasedDeclarationProviderFactory
@@ -60,7 +60,7 @@ public abstract class AbstractLocalClassProtoTest : TestCaseWithTmpdir() {
val container = createContainerForTopDownAnalyzerForJvm(
moduleContext, CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace(),
providerFactory, GlobalSearchScope.allScope(environment.project), LookupTracker.DO_NOTHING, PackageMappingProvider.EMPTY
providerFactory, GlobalSearchScope.allScope(environment.project), LookupTracker.DO_NOTHING, PackageFacadeProvider.EMPTY
)
moduleContext.initializeModuleContents(container.javaDescriptorResolver.packageFragmentProvider)
@@ -66,7 +66,6 @@ import org.jetbrains.kotlin.psi.JetFile;
import org.jetbrains.kotlin.resolve.BindingContext;
import org.jetbrains.kotlin.resolve.BindingTrace;
import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics;
import org.jetbrains.kotlin.resolve.lazy.JvmPackageMappingProvider;
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
import org.jetbrains.kotlin.resolve.lazy.LazyResolveTestUtil;
import org.jetbrains.kotlin.storage.LockBasedStorageManager;