Get rid of getModuleName(), pass configuration to createContextWithSealedModule
Add KotlinTestUtils.newConfiguration() which creates a configuration and sets
the module name to the default test one ("test-module")
This commit is contained in:
+1
-2
@@ -28,7 +28,6 @@ import org.jetbrains.kotlin.cli.common.output.outputUtils.writeAll
|
|||||||
import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.addJavaSourceRoot
|
import org.jetbrains.kotlin.cli.jvm.config.addJavaSourceRoot
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoot
|
import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoot
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.getModuleName
|
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.jvmClasspathRoots
|
import org.jetbrains.kotlin.cli.jvm.config.jvmClasspathRoots
|
||||||
import org.jetbrains.kotlin.codegen.*
|
import org.jetbrains.kotlin.codegen.*
|
||||||
import org.jetbrains.kotlin.codegen.state.GenerationState
|
import org.jetbrains.kotlin.codegen.state.GenerationState
|
||||||
@@ -291,7 +290,7 @@ object KotlinToJVMBytecodeCompiler {
|
|||||||
override fun analyze(): AnalysisResult {
|
override fun analyze(): AnalysisResult {
|
||||||
val sharedTrace = CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace()
|
val sharedTrace = CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace()
|
||||||
val moduleContext =
|
val moduleContext =
|
||||||
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.project, environment.getModuleName())
|
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.project, environment.configuration)
|
||||||
|
|
||||||
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
||||||
moduleContext,
|
moduleContext,
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2010-2016 JetBrains s.r.o.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.jetbrains.kotlin.cli.jvm.config
|
|
||||||
|
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
|
||||||
import org.jetbrains.kotlin.config.JVMConfigurationKeys
|
|
||||||
|
|
||||||
fun KotlinCoreEnvironment.getModuleName(): String = configuration.get(JVMConfigurationKeys.MODULE_NAME)!!
|
|
||||||
@@ -20,7 +20,6 @@ import com.intellij.psi.search.ProjectScope
|
|||||||
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackagePartProvider
|
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackagePartProvider
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.getModuleName
|
|
||||||
import org.jetbrains.kotlin.cli.jvm.repl.di.createContainerForReplWithJava
|
import org.jetbrains.kotlin.cli.jvm.repl.di.createContainerForReplWithJava
|
||||||
import org.jetbrains.kotlin.descriptors.ScriptDescriptor
|
import org.jetbrains.kotlin.descriptors.ScriptDescriptor
|
||||||
import org.jetbrains.kotlin.descriptors.impl.CompositePackageFragmentProvider
|
import org.jetbrains.kotlin.descriptors.impl.CompositePackageFragmentProvider
|
||||||
@@ -38,7 +37,7 @@ import org.jetbrains.kotlin.resolve.lazy.declarations.*
|
|||||||
import org.jetbrains.kotlin.resolve.repl.ReplState
|
import org.jetbrains.kotlin.resolve.repl.ReplState
|
||||||
import org.jetbrains.kotlin.script.ScriptPriorities
|
import org.jetbrains.kotlin.script.ScriptPriorities
|
||||||
|
|
||||||
class CliReplAnalyzerEngine(private val environment: KotlinCoreEnvironment) {
|
class CliReplAnalyzerEngine(environment: KotlinCoreEnvironment) {
|
||||||
private val topDownAnalysisContext: TopDownAnalysisContext
|
private val topDownAnalysisContext: TopDownAnalysisContext
|
||||||
private val topDownAnalyzer: LazyTopDownAnalyzerForTopLevel
|
private val topDownAnalyzer: LazyTopDownAnalyzerForTopLevel
|
||||||
private val resolveSession: ResolveSession
|
private val resolveSession: ResolveSession
|
||||||
@@ -48,7 +47,7 @@ class CliReplAnalyzerEngine(private val environment: KotlinCoreEnvironment) {
|
|||||||
val trace: BindingTraceContext = CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace()
|
val trace: BindingTraceContext = CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace()
|
||||||
|
|
||||||
init {
|
init {
|
||||||
val moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.project, environment.getModuleName())
|
val moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.project, environment.configuration)
|
||||||
this.module = moduleContext.module
|
this.module = moduleContext.module
|
||||||
|
|
||||||
scriptDeclarationFactory = ScriptMutableDeclarationProviderFactory()
|
scriptDeclarationFactory = ScriptMutableDeclarationProviderFactory()
|
||||||
|
|||||||
+5
-3
@@ -138,12 +138,14 @@ public enum TopDownAnalyzerFacadeForJVM {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public static MutableModuleContext createContextWithSealedModule(@NotNull Project project, @NotNull String moduleName) {
|
public static MutableModuleContext createContextWithSealedModule(
|
||||||
|
@NotNull Project project, @NotNull CompilerConfiguration configuration
|
||||||
|
) {
|
||||||
ProjectContext projectContext = ContextKt.ProjectContext(project);
|
ProjectContext projectContext = ContextKt.ProjectContext(project);
|
||||||
JvmBuiltIns builtIns = new JvmBuiltIns(projectContext.getStorageManager());
|
JvmBuiltIns builtIns = new JvmBuiltIns(projectContext.getStorageManager());
|
||||||
MutableModuleContext context = ContextKt.ContextForNewModule(
|
MutableModuleContext context = ContextKt.ContextForNewModule(
|
||||||
projectContext, Name.special("<" + moduleName + ">"), JvmPlatform.INSTANCE,
|
projectContext, Name.special("<" + configuration.getNotNull(JVMConfigurationKeys.MODULE_NAME) + ">"),
|
||||||
builtIns
|
JvmPlatform.INSTANCE, builtIns
|
||||||
);
|
);
|
||||||
builtIns.setOwnerModuleDescriptor(context.getModule());
|
builtIns.setOwnerModuleDescriptor(context.getModule());
|
||||||
context.setDependencies(context.getModule(), context.getBuiltIns().getBuiltInsModule());
|
context.setDependencies(context.getModule(), context.getBuiltIns().getBuiltInsModule());
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import org.jetbrains.kotlin.config.CompilerConfiguration;
|
|||||||
import org.jetbrains.kotlin.descriptors.PackagePartProvider;
|
import org.jetbrains.kotlin.descriptors.PackagePartProvider;
|
||||||
import org.jetbrains.kotlin.psi.KtFile;
|
import org.jetbrains.kotlin.psi.KtFile;
|
||||||
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
|
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
|
||||||
|
import org.jetbrains.kotlin.test.KotlinTestUtils;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@@ -54,7 +55,7 @@ public class GenerationUtils {
|
|||||||
PackagePartProvider packagePartProvider =
|
PackagePartProvider packagePartProvider =
|
||||||
environment == null ? PackagePartProvider.Companion.getEMPTY() : new JvmPackagePartProvider(environment);
|
environment == null ? PackagePartProvider.Companion.getEMPTY() : new JvmPackagePartProvider(environment);
|
||||||
CompilerConfiguration configuration =
|
CompilerConfiguration configuration =
|
||||||
environment == null ? CompilerConfiguration.EMPTY : environment.getConfiguration();
|
environment == null ? KotlinTestUtils.newConfiguration() : environment.getConfiguration();
|
||||||
|
|
||||||
AnalysisResult analysisResult =
|
AnalysisResult analysisResult =
|
||||||
JvmResolveUtil.analyzeAndCheckForErrors(CollectionsKt.first(files).getProject(), files, configuration, packagePartProvider);
|
JvmResolveUtil.analyzeAndCheckForErrors(CollectionsKt.first(files).getProject(), files, configuration, packagePartProvider);
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
|||||||
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackagePartProvider;
|
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackagePartProvider;
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
|
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.ModuleNameKt;
|
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
||||||
import org.jetbrains.kotlin.config.ContentRootsKt;
|
import org.jetbrains.kotlin.config.ContentRootsKt;
|
||||||
import org.jetbrains.kotlin.config.JVMConfigurationKeys;
|
import org.jetbrains.kotlin.config.JVMConfigurationKeys;
|
||||||
@@ -152,8 +151,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
CompilerConfiguration configuration = KotlinTestUtils.compilerConfigurationForTests(
|
CompilerConfiguration configuration = KotlinTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_ONLY, getJdkKind());
|
||||||
ConfigurationKind.JDK_ONLY, getJdkKind());
|
|
||||||
ContentRootsKt.addKotlinSourceRoot(configuration, sourcesDir.getAbsolutePath());
|
ContentRootsKt.addKotlinSourceRoot(configuration, sourcesDir.getAbsolutePath());
|
||||||
JvmContentRootsKt.addJavaSourceRoot(configuration, new File("compiler/testData/loadJava/include"));
|
JvmContentRootsKt.addJavaSourceRoot(configuration, new File("compiler/testData/loadJava/include"));
|
||||||
JvmContentRootsKt.addJavaSourceRoot(configuration, tmpdir);
|
JvmContentRootsKt.addJavaSourceRoot(configuration, tmpdir);
|
||||||
@@ -162,9 +160,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir {
|
|||||||
KotlinCoreEnvironment.createForTests(getTestRootDisposable(), configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES);
|
KotlinCoreEnvironment.createForTests(getTestRootDisposable(), configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES);
|
||||||
|
|
||||||
BindingTrace trace = new CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace();
|
BindingTrace trace = new CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace();
|
||||||
ModuleContext moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(
|
ModuleContext moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.getProject(), configuration);
|
||||||
environment.getProject(), ModuleNameKt.getModuleName(environment)
|
|
||||||
);
|
|
||||||
|
|
||||||
TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
||||||
moduleContext, environment.getSourceFiles(), trace, configuration, new JvmPackagePartProvider(environment)
|
moduleContext, environment.getSourceFiles(), trace, configuration, new JvmPackagePartProvider(environment)
|
||||||
|
|||||||
+1
-3
@@ -20,7 +20,6 @@ import com.intellij.openapi.editor.impl.DocumentImpl
|
|||||||
import com.intellij.openapi.util.io.FileUtil
|
import com.intellij.openapi.util.io.FileUtil
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.getModuleName
|
|
||||||
import org.jetbrains.kotlin.container.ComponentProvider
|
import org.jetbrains.kotlin.container.ComponentProvider
|
||||||
import org.jetbrains.kotlin.container.get
|
import org.jetbrains.kotlin.container.get
|
||||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||||
@@ -54,8 +53,7 @@ abstract class AbstractDescriptorRendererTest : KotlinTestWithEnvironment() {
|
|||||||
val fileText = FileUtil.loadFile(File(path), true)
|
val fileText = FileUtil.loadFile(File(path), true)
|
||||||
val psiFile = KtPsiFactory(project).createFile(fileText)
|
val psiFile = KtPsiFactory(project).createFile(fileText)
|
||||||
|
|
||||||
val context = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, environment.getModuleName())
|
val context = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, environment.configuration)
|
||||||
|
|
||||||
|
|
||||||
val container = createContainerForLazyResolve(
|
val container = createContainerForLazyResolve(
|
||||||
context,
|
context,
|
||||||
|
|||||||
@@ -27,7 +27,6 @@ import org.jetbrains.kotlin.descriptors.PackagePartProvider;
|
|||||||
import org.jetbrains.kotlin.psi.KtFile;
|
import org.jetbrains.kotlin.psi.KtFile;
|
||||||
import org.jetbrains.kotlin.resolve.AnalyzingUtils;
|
import org.jetbrains.kotlin.resolve.AnalyzingUtils;
|
||||||
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM;
|
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM;
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils;
|
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@@ -89,7 +88,7 @@ public class JvmResolveUtil {
|
|||||||
@NotNull PackagePartProvider packagePartProvider
|
@NotNull PackagePartProvider packagePartProvider
|
||||||
) {
|
) {
|
||||||
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
||||||
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, KotlinTestUtils.TEST_MODULE_NAME),
|
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, configuration),
|
||||||
files, new CliLightClassGenerationSupport.CliBindingTrace(), configuration, packagePartProvider
|
files, new CliLightClassGenerationSupport.CliBindingTrace(), configuration, packagePartProvider
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,10 +53,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
|||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
|
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
|
||||||
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime;
|
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime;
|
||||||
import org.jetbrains.kotlin.config.CommonConfigurationKeys;
|
import org.jetbrains.kotlin.config.*;
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
|
||||||
import org.jetbrains.kotlin.config.ContentRoot;
|
|
||||||
import org.jetbrains.kotlin.config.KotlinSourceRoot;
|
|
||||||
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl;
|
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl;
|
||||||
import org.jetbrains.kotlin.diagnostics.Diagnostic;
|
import org.jetbrains.kotlin.diagnostics.Diagnostic;
|
||||||
import org.jetbrains.kotlin.diagnostics.Errors;
|
import org.jetbrains.kotlin.diagnostics.Errors;
|
||||||
@@ -95,8 +92,6 @@ import java.util.*;
|
|||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import static org.jetbrains.kotlin.config.JVMConfigurationKeys.MODULE_NAME;
|
|
||||||
|
|
||||||
public class KotlinTestUtils {
|
public class KotlinTestUtils {
|
||||||
public static String TEST_MODULE_NAME = "test-module";
|
public static String TEST_MODULE_NAME = "test-module";
|
||||||
|
|
||||||
@@ -423,6 +418,13 @@ public class KotlinTestUtils {
|
|||||||
return FileUtil.toSystemIndependentName(file.getPath());
|
return FileUtil.toSystemIndependentName(file.getPath());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
public static CompilerConfiguration newConfiguration() {
|
||||||
|
CompilerConfiguration configuration = new CompilerConfiguration();
|
||||||
|
configuration.put(JVMConfigurationKeys.MODULE_NAME, TEST_MODULE_NAME);
|
||||||
|
return configuration;
|
||||||
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public static CompilerConfiguration compilerConfigurationForTests(
|
public static CompilerConfiguration compilerConfigurationForTests(
|
||||||
@NotNull ConfigurationKind configurationKind,
|
@NotNull ConfigurationKind configurationKind,
|
||||||
@@ -439,7 +441,7 @@ public class KotlinTestUtils {
|
|||||||
@NotNull List<File> classpath,
|
@NotNull List<File> classpath,
|
||||||
@NotNull List<File> javaSource
|
@NotNull List<File> javaSource
|
||||||
) {
|
) {
|
||||||
CompilerConfiguration configuration = new CompilerConfiguration();
|
CompilerConfiguration configuration = newConfiguration();
|
||||||
JvmContentRootsKt.addJavaSourceRoots(configuration, javaSource);
|
JvmContentRootsKt.addJavaSourceRoots(configuration, javaSource);
|
||||||
if (jdkKind == TestJdkKind.MOCK_JDK) {
|
if (jdkKind == TestJdkKind.MOCK_JDK) {
|
||||||
JvmContentRootsKt.addJvmClasspathRoot(configuration, findMockJdkRtJar());
|
JvmContentRootsKt.addJvmClasspathRoot(configuration, findMockJdkRtJar());
|
||||||
@@ -467,8 +469,6 @@ public class KotlinTestUtils {
|
|||||||
|
|
||||||
JvmContentRootsKt.addJvmClasspathRoots(configuration, classpath);
|
JvmContentRootsKt.addJvmClasspathRoots(configuration, classpath);
|
||||||
|
|
||||||
configuration.put(MODULE_NAME, TEST_MODULE_NAME);
|
|
||||||
|
|
||||||
return configuration;
|
return configuration;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
|||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
||||||
import org.jetbrains.kotlin.config.ContentRootsKt;
|
import org.jetbrains.kotlin.config.ContentRootsKt;
|
||||||
|
import org.jetbrains.kotlin.test.KotlinTestUtils;
|
||||||
import org.jetbrains.kotlin.test.KotlinTestWithEnvironment;
|
import org.jetbrains.kotlin.test.KotlinTestWithEnvironment;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@@ -31,7 +32,7 @@ public abstract class KotlinAsJavaTestBase extends KotlinTestWithEnvironment {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected KotlinCoreEnvironment createEnvironment() {
|
protected KotlinCoreEnvironment createEnvironment() {
|
||||||
CompilerConfiguration configuration = new CompilerConfiguration();
|
CompilerConfiguration configuration = KotlinTestUtils.newConfiguration();
|
||||||
|
|
||||||
for (File root : getKotlinSourceRoots()) {
|
for (File root : getKotlinSourceRoots()) {
|
||||||
ContentRootsKt.addKotlinSourceRoot(configuration, root.getPath());
|
ContentRootsKt.addKotlinSourceRoot(configuration, root.getPath());
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ import com.intellij.psi.util.PsiTreeUtil;
|
|||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
|
||||||
import org.jetbrains.kotlin.name.FqName;
|
import org.jetbrains.kotlin.name.FqName;
|
||||||
import org.jetbrains.kotlin.name.Name;
|
import org.jetbrains.kotlin.name.Name;
|
||||||
import org.jetbrains.kotlin.resolve.ImportPath;
|
import org.jetbrains.kotlin.resolve.ImportPath;
|
||||||
@@ -110,7 +109,9 @@ public class KtPsiUtilTest extends KotlinTestWithEnvironment {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected KotlinCoreEnvironment createEnvironment() {
|
protected KotlinCoreEnvironment createEnvironment() {
|
||||||
return KotlinCoreEnvironment.createForTests(getTestRootDisposable(), new CompilerConfiguration(), EnvironmentConfigFiles.JVM_CONFIG_FILES);
|
return KotlinCoreEnvironment.createForTests(
|
||||||
|
getTestRootDisposable(), KotlinTestUtils.newConfiguration(), EnvironmentConfigFiles.JVM_CONFIG_FILES
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private ImportPath getImportPathFromParsed(String text) {
|
private ImportPath getImportPathFromParsed(String text) {
|
||||||
|
|||||||
@@ -18,8 +18,8 @@ package org.jetbrains.kotlin.psi
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration
|
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getReceiverExpression
|
import org.jetbrains.kotlin.psi.psiUtil.getReceiverExpression
|
||||||
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.jetbrains.kotlin.test.KotlinTestWithEnvironment
|
import org.jetbrains.kotlin.test.KotlinTestWithEnvironment
|
||||||
import org.junit.Assert
|
import org.junit.Assert
|
||||||
|
|
||||||
@@ -38,6 +38,8 @@ class KtSimpleNameExpressionTest : KotlinTestWithEnvironment() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun createEnvironment(): KotlinCoreEnvironment {
|
override fun createEnvironment(): KotlinCoreEnvironment {
|
||||||
return KotlinCoreEnvironment.createForTests(testRootDisposable!!, CompilerConfiguration(), EnvironmentConfigFiles.JVM_CONFIG_FILES)
|
return KotlinCoreEnvironment.createForTests(
|
||||||
|
testRootDisposable, KotlinTestUtils.newConfiguration(), EnvironmentConfigFiles.JVM_CONFIG_FILES
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ package org.jetbrains.kotlin.resolve
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration
|
|
||||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||||
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory
|
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory
|
||||||
import org.jetbrains.kotlin.diagnostics.Severity
|
import org.jetbrains.kotlin.diagnostics.Severity
|
||||||
@@ -26,12 +25,15 @@ import org.jetbrains.kotlin.psi.KtPsiFactory
|
|||||||
import org.jetbrains.kotlin.psi.doNotAnalyze
|
import org.jetbrains.kotlin.psi.doNotAnalyze
|
||||||
import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics
|
import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics
|
||||||
import org.jetbrains.kotlin.resolve.diagnostics.MutableDiagnosticsWithSuppression
|
import org.jetbrains.kotlin.resolve.diagnostics.MutableDiagnosticsWithSuppression
|
||||||
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.jetbrains.kotlin.test.KotlinTestWithEnvironment
|
import org.jetbrains.kotlin.test.KotlinTestWithEnvironment
|
||||||
import org.junit.Assert
|
import org.junit.Assert
|
||||||
|
|
||||||
class MutableDiagnosticsTest : KotlinTestWithEnvironment() {
|
class MutableDiagnosticsTest : KotlinTestWithEnvironment() {
|
||||||
override fun createEnvironment(): KotlinCoreEnvironment? {
|
override fun createEnvironment(): KotlinCoreEnvironment? {
|
||||||
return KotlinCoreEnvironment.createForTests(testRootDisposable!!, CompilerConfiguration(), EnvironmentConfigFiles.JVM_CONFIG_FILES)
|
return KotlinCoreEnvironment.createForTests(
|
||||||
|
testRootDisposable, KotlinTestUtils.newConfiguration(), EnvironmentConfigFiles.JVM_CONFIG_FILES
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private val BindingTrace.diagnostics: Diagnostics
|
private val BindingTrace.diagnostics: Diagnostics
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import com.intellij.psi.search.GlobalSearchScope
|
|||||||
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.getModuleName
|
|
||||||
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime
|
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime
|
||||||
import org.jetbrains.kotlin.descriptors.PackagePartProvider
|
import org.jetbrains.kotlin.descriptors.PackagePartProvider
|
||||||
import org.jetbrains.kotlin.frontend.java.di.createContainerForTopDownAnalyzerForJvm
|
import org.jetbrains.kotlin.frontend.java.di.createContainerForTopDownAnalyzerForJvm
|
||||||
@@ -53,12 +52,9 @@ abstract class AbstractLocalClassProtoTest : TestCaseWithTmpdir() {
|
|||||||
val clazz = classLoader.loadClass(classFile.toRelativeString(tmpdir).substringBeforeLast(".class").replace('/', '.').replace('\\', '.'))
|
val clazz = classLoader.loadClass(classFile.toRelativeString(tmpdir).substringBeforeLast(".class").replace('/', '.').replace('\\', '.'))
|
||||||
assertHasAnnotationData(clazz)
|
assertHasAnnotationData(clazz)
|
||||||
|
|
||||||
val environment = KotlinCoreEnvironment.createForTests(
|
val configuration = KotlinTestUtils.compilerConfigurationForTests(ConfigurationKind.ALL, TestJdkKind.MOCK_JDK, tmpdir)
|
||||||
testRootDisposable,
|
val environment = KotlinCoreEnvironment.createForTests(testRootDisposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES)
|
||||||
KotlinTestUtils.compilerConfigurationForTests(ConfigurationKind.ALL, TestJdkKind.MOCK_JDK, tmpdir),
|
val moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.project, configuration)
|
||||||
EnvironmentConfigFiles.JVM_CONFIG_FILES
|
|
||||||
)
|
|
||||||
val moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.project, environment.getModuleName())
|
|
||||||
val providerFactory = FileBasedDeclarationProviderFactory(moduleContext.storageManager, emptyList())
|
val providerFactory = FileBasedDeclarationProviderFactory(moduleContext.storageManager, emptyList())
|
||||||
|
|
||||||
val container = createContainerForTopDownAnalyzerForJvm(
|
val container = createContainerForTopDownAnalyzerForJvm(
|
||||||
|
|||||||
+7
-8
@@ -18,7 +18,6 @@ package org.jetbrains.kotlin.idea.decompiler.textBuilder
|
|||||||
|
|
||||||
import com.intellij.openapi.vfs.VirtualFile
|
import com.intellij.openapi.vfs.VirtualFile
|
||||||
import com.intellij.psi.search.GlobalSearchScope
|
import com.intellij.psi.search.GlobalSearchScope
|
||||||
import org.jetbrains.kotlin.config.CompilerConfiguration
|
|
||||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||||
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
||||||
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil
|
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil
|
||||||
@@ -31,7 +30,6 @@ import org.jetbrains.kotlin.load.kotlin.VirtualFileFinder
|
|||||||
import org.jetbrains.kotlin.name.FqName
|
import org.jetbrains.kotlin.name.FqName
|
||||||
import org.jetbrains.kotlin.resolve.BindingTraceContext
|
import org.jetbrains.kotlin.resolve.BindingTraceContext
|
||||||
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM
|
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM
|
||||||
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil
|
|
||||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedCallableMemberDescriptor
|
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedCallableMemberDescriptor
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
|
|
||||||
@@ -49,12 +47,13 @@ class DecompiledTextConsistencyTest : TextConsistencyBaseTest() {
|
|||||||
override fun getDecompiledText(packageFile: VirtualFile, resolver: ResolverForDecompiler?): String =
|
override fun getDecompiledText(packageFile: VirtualFile, resolver: ResolverForDecompiler?): String =
|
||||||
(resolver?.let { buildDecompiledTextForClassFile(packageFile, it) } ?: buildDecompiledTextForClassFile(packageFile)).text
|
(resolver?.let { buildDecompiledTextForClassFile(packageFile, it) } ?: buildDecompiledTextForClassFile(packageFile)).text
|
||||||
|
|
||||||
override fun getModuleDescriptor(): ModuleDescriptor =
|
override fun getModuleDescriptor(): ModuleDescriptor {
|
||||||
TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
val configuration = KotlinTestUtils.newConfiguration()
|
||||||
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, KotlinTestUtils.TEST_MODULE_NAME),
|
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
|
||||||
listOf(), BindingTraceContext(), CompilerConfiguration.EMPTY,
|
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, configuration), listOf(), BindingTraceContext(),
|
||||||
IDEPackagePartProvider(GlobalSearchScope.allScope(project))
|
configuration, IDEPackagePartProvider(GlobalSearchScope.allScope(project))
|
||||||
).moduleDescriptor
|
).moduleDescriptor
|
||||||
|
}
|
||||||
|
|
||||||
override fun getProjectDescriptor() =
|
override fun getProjectDescriptor() =
|
||||||
object : KotlinWithJdkAndRuntimeLightProjectDescriptor() {
|
object : KotlinWithJdkAndRuntimeLightProjectDescriptor() {
|
||||||
|
|||||||
Reference in New Issue
Block a user