[213] Switch to 213 platform

KTI-1114
This commit is contained in:
Roman Golyshev
2022-07-19 17:15:29 +02:00
committed by Space Team
parent 7f07b2a82c
commit d4cffb8a5a
94 changed files with 173 additions and 212 deletions
+1 -1
View File
@@ -29,7 +29,7 @@ dependencies {
testApi(jpsBuildTest())
testRuntimeOnly(intellijCore())
testRuntimeOnly(commonDependency("net.java.dev.jna:jna"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
testApi("org.junit.platform:junit-platform-launcher:${commonDependencyVersion("org.junit.platform", "")}")
}
@@ -20,7 +20,6 @@ import com.intellij.util.ArrayUtil
import org.jetbrains.kotlin.util.findImplementationFromInterface
import org.jetbrains.kotlin.codegen.context.ClassContext
import org.jetbrains.kotlin.codegen.state.GenerationState
import org.jetbrains.kotlin.codegen.state.JvmMethodExceptionTypes
import org.jetbrains.kotlin.descriptors.*
import org.jetbrains.kotlin.load.java.descriptors.JavaMethodDescriptor
import org.jetbrains.kotlin.psi.KtPureClassOrObject
@@ -168,7 +167,7 @@ class InterfaceImplBodyCodegen(
name: String,
desc: String,
signature: String?,
exceptions: JvmMethodExceptionTypes
exceptions: Array<out String>?
): MethodVisitor {
if (shouldCount) {
isAnythingGenerated = true
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.codegen
import org.jetbrains.kotlin.codegen.state.JvmMethodExceptionTypes
import org.jetbrains.kotlin.resolve.jvm.diagnostics.JvmDeclarationOrigin
import org.jetbrains.org.objectweb.asm.*
import org.jetbrains.org.objectweb.asm.tree.*
@@ -43,7 +42,7 @@ class OriginCollectingClassBuilderFactory(private val builderMode: ClassBuilderM
name: String,
desc: String,
signature: String?,
exceptions: JvmMethodExceptionTypes
exceptions: Array<out String>?
): MethodVisitor {
val methodNode = super.newMethod(origin, access, name, desc, signature, exceptions) as MethodNode
origins[methodNode] = origin
@@ -18,7 +18,6 @@ package org.jetbrains.kotlin.codegen
import com.intellij.psi.PsiElement
import com.intellij.util.containers.MultiMap
import org.jetbrains.kotlin.codegen.state.JvmMethodExceptionTypes
import org.jetbrains.kotlin.resolve.jvm.diagnostics.ConflictingJvmDeclarationsData
import org.jetbrains.kotlin.resolve.jvm.diagnostics.JvmDeclarationOrigin
import org.jetbrains.kotlin.resolve.jvm.diagnostics.MemberKind
@@ -63,7 +62,7 @@ abstract class SignatureCollectingClassBuilderFactory(
return super.newField(origin, access, name, desc, signature, value)
}
override fun newMethod(origin: JvmDeclarationOrigin, access: Int, name: String, desc: String, signature: String?, exceptions: JvmMethodExceptionTypes): MethodVisitor {
override fun newMethod(origin: JvmDeclarationOrigin, access: Int, name: String, desc: String, signature: String?, exceptions: Array<out String>?): MethodVisitor {
signatures.putValue(RawSignature(name, desc, MemberKind.METHOD), origin)
if (!shouldGenerate(origin)) {
return AbstractClassBuilder.EMPTY_METHOD_VISITOR
@@ -195,7 +195,7 @@ fun surroundInvokesWithSuspendMarkersIfNeeded(node: MethodNode) {
val sourceFrames = MethodTransformer.analyze("fake", node, CapturedLambdaInterpreter())
val loads = markers.map { marker ->
val arity = (marker.next as MethodInsnNode).owner.removePrefix(NUMBERED_FUNCTION_PREFIX).toInt()
var receiver = sourceFrames[node.instructions.indexOf(marker) + 1].getSource(arity)
var receiver = sourceFrames[node.instructions.indexOf(marker) + 1]?.getSource(arity)
// Navigate the ALOAD+GETFIELD+... chain to the first instruction. We need to insert a stack
// spilling marker before it starts.
while (receiver?.opcode == Opcodes.GETFIELD) {
@@ -33,7 +33,7 @@ class OptimizationClassBuilder(private val delegate: ClassBuilder, private val g
name: String,
desc: String,
signature: String?,
exceptions: Array<String>?
exceptions: Array<out String>?
): MethodVisitor {
return OptimizationMethodVisitor(
super.newMethod(origin, access, name, desc, signature, exceptions),
@@ -40,7 +40,7 @@ class OptimizationMethodVisitor(
name: String,
desc: String,
signature: String?,
exceptions: Array<String>?
exceptions: Array<out String>?
) : TransformationMethodVisitor(delegate, access, name, desc, signature, exceptions) {
val normalizationMethodTransformer = CompositeMethodTransformer(
InplaceArgumentsMethodTransformer(),
@@ -17,6 +17,7 @@
package org.jetbrains.kotlin.codegen.optimization.transformer;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.codegen.optimization.common.FastMethodAnalyzer;
import org.jetbrains.kotlin.utils.ExceptionUtilsKt;
import org.jetbrains.org.objectweb.asm.tree.MethodNode;
@@ -1,8 +0,0 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.codegen.state
typealias JvmMethodExceptionTypes = Array<out String?>?
@@ -83,7 +83,7 @@ class SignatureDumpingBuilderFactory(
super.defineClass(origin, version, access, name, signature, superName, interfaces)
}
override fun newMethod(origin: JvmDeclarationOrigin, access: Int, name: String, desc: String, signature: String?, exceptions: JvmMethodExceptionTypes): MethodVisitor {
override fun newMethod(origin: JvmDeclarationOrigin, access: Int, name: String, desc: String, signature: String?, exceptions: Array<out String>?): MethodVisitor {
signatures += RawSignature(name, desc, MemberKind.METHOD) to origin.descriptor?.let {
if (it is CallableDescriptor) it.unwrapInitialDescriptorForSuspendFunction() else it
}
@@ -168,7 +168,7 @@ class KotlinCoreEnvironment private constructor(
with(project) {
registerService(
CoreJavaFileManager::class.java,
ServiceManager.getService(this, JavaFileManager::class.java) as CoreJavaFileManager
this.getService(JavaFileManager::class.java) as CoreJavaFileManager
)
registerKotlinLightClassSupport(project)
@@ -199,7 +199,7 @@ class KotlinCoreEnvironment private constructor(
sourceFiles.sortBy { it.virtualFile.path }
val javaFileManager = ServiceManager.getService(project, CoreJavaFileManager::class.java) as KotlinCliJavaFileManagerImpl
val javaFileManager = project.getService(CoreJavaFileManager::class.java) as KotlinCliJavaFileManagerImpl
val messageCollector = configuration.get(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY)
@@ -59,4 +59,6 @@ class MockExternalAnnotationsManager : ExternalAnnotationsManager() {
override fun findDefaultConstructorExternalAnnotations(aClass: PsiClass): List<PsiAnnotation> = emptyList()
override fun findExternalAnnotations(listOwner: PsiModifierListOwner, annotationFQN: String): List<PsiAnnotation> = emptyList()
override fun hasConfiguredAnnotationRoot(owner: PsiModifierListOwner): Boolean = false
}
@@ -41,7 +41,7 @@ class CtSymClassVirtualFile(
override fun refresh(p0: Boolean, p1: Boolean, p2: Runnable?) = file.refresh(p0, p1, p2)
override fun getInputStream(): InputStream? = file.inputStream
override fun getInputStream(): InputStream = file.inputStream
override fun getFileType(): FileType = JavaClassFileType.INSTANCE
@@ -81,5 +81,5 @@ class CtSymDirectoryContainer(
override fun refresh(p0: Boolean, p1: Boolean, p2: Runnable?) {}
override fun getInputStream(): InputStream? = error("not supported")
override fun getInputStream(): InputStream = error("not supported")
}
@@ -5,8 +5,8 @@
package org.jetbrains.kotlin.cli.jvm.modules
import com.intellij.openapi.util.SystemInfo
import com.intellij.util.lang.JavaVersion
fun isAtLeastJava9(): Boolean {
return SystemInfo.isJavaVersionAtLeast(9, 0, 0)
return JavaVersion.current() >= JavaVersion.compose(9)
}
@@ -8,7 +8,6 @@ package org.jetbrains.kotlin.cli.jvm.compiler.pipeline
import com.intellij.core.CoreJavaFileManager
import com.intellij.ide.highlighter.JavaFileType
import com.intellij.openapi.Disposable
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.vfs.StandardFileSystems
import com.intellij.openapi.vfs.VirtualFile
@@ -482,7 +481,7 @@ fun createProjectEnvironment(
val project = projectEnvironment.project
val localFileSystem = VirtualFileManager.getInstance().getFileSystem(StandardFileSystems.FILE_PROTOCOL)
val javaFileManager = ServiceManager.getService(project, CoreJavaFileManager::class.java) as KotlinCliJavaFileManagerImpl
val javaFileManager = project.getService(CoreJavaFileManager::class.java) as KotlinCliJavaFileManagerImpl
val releaseTarget = configuration.get(JVMConfigurationKeys.JDK_RELEASE)
+1 -1
View File
@@ -35,7 +35,7 @@ dependencies {
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil"))
testRuntimeOnly(commonDependency("one.util:streamex"))
testRuntimeOnly(commonDependency("net.java.dev.jna:jna"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
testRuntimeOnly(toolsJar())
}
+1 -1
View File
@@ -39,7 +39,7 @@ dependencies {
testCompileOnly(intellijCore())
testRuntimeOnly(intellijCore())
testRuntimeOnly(commonDependency("net.java.dev.jna:jna"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil"))
testRuntimeOnly(commonDependency("one.util:streamex"))
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.analyzer
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.util.ModificationTracker
import org.jetbrains.kotlin.psi.KtFile
@@ -20,7 +19,7 @@ open class KotlinModificationTrackerService {
@JvmStatic
fun getInstance(project: Project): KotlinModificationTrackerService {
return ServiceManager.getService(project, KotlinModificationTrackerService::class.java) ?: NEVER_CHANGE_TRACKER_SERVICE
return project.getService(KotlinModificationTrackerService::class.java) ?: NEVER_CHANGE_TRACKER_SERVICE
}
}
}
@@ -8,7 +8,6 @@ package org.jetbrains.kotlin.load.kotlin
import com.intellij.ide.highlighter.JavaClassFileType
import com.intellij.openapi.Disposable
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.util.Computable
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.PsiJavaModule
@@ -79,7 +78,7 @@ class KotlinBinaryClassCache : Disposable {
if (file.name == PsiJavaModule.MODULE_INFO_CLS_FILE) return null
val service = ServiceManager.getService(KotlinBinaryClassCache::class.java)
val service = ApplicationManager.getApplication().getService(KotlinBinaryClassCache::class.java)
val requestCache = service.cache.get()
if (file.modificationStamp == requestCache.modificationStamp && file == requestCache.virtualFile) {
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.load.kotlin
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.psi.search.GlobalSearchScope
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
@@ -27,6 +26,6 @@ interface VirtualFileFinderFactory : MetadataFinderFactory {
companion object SERVICE {
fun getInstance(project: Project): VirtualFileFinderFactory =
ServiceManager.getService(project, VirtualFileFinderFactory::class.java)
project.getService(VirtualFileFinderFactory::class.java)
}
}
@@ -16,12 +16,10 @@
package org.jetbrains.kotlin.load.kotlin
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.vfs.StandardFileSystems
import com.intellij.openapi.vfs.VfsUtilCore
import org.jetbrains.kotlin.descriptors.*
import org.jetbrains.kotlin.load.kotlin.VirtualFileKotlinClass
import org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageFragment
import org.jetbrains.kotlin.modules.Module
import org.jetbrains.kotlin.resolve.DescriptorUtils
@@ -39,7 +37,7 @@ interface ModuleVisibilityManager {
object SERVICE {
@JvmStatic fun getInstance(project: Project): ModuleVisibilityManager =
ServiceManager.getService(project, ModuleVisibilityManager::class.java)
project.getService(ModuleVisibilityManager::class.java)
}
}
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.resolve.jvm.modules
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.vfs.VirtualFile
import org.jetbrains.kotlin.load.java.JavaModuleAnnotationsProvider
@@ -32,6 +31,6 @@ interface JavaModuleResolver : JavaModuleAnnotationsProvider {
}
companion object SERVICE {
fun getInstance(project: Project): JavaModuleResolver = ServiceManager.getService(project, JavaModuleResolver::class.java)
fun getInstance(project: Project): JavaModuleResolver = project.getService(JavaModuleResolver::class.java)
}
}
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.analyzer.common
import com.intellij.openapi.components.ServiceManager
import com.intellij.psi.search.GlobalSearchScope
import org.jetbrains.kotlin.analyzer.*
import org.jetbrains.kotlin.config.LanguageFeature
@@ -276,8 +275,7 @@ private fun createContainerToResolveCommonCode(
configureCommonSpecificComponents()
useInstance(metadataPartProvider)
val metadataFinderFactory = ServiceManager.getService(
moduleContext.project,
val metadataFinderFactory = moduleContext.project.getService(
MetadataFinderFactory::class.java
)
?: error("No MetadataFinderFactory in project")
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.resolve
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
interface CodeAnalyzerInitializer {
@@ -24,7 +23,7 @@ interface CodeAnalyzerInitializer {
companion object {
fun getInstance(project: Project): CodeAnalyzerInitializer =
ServiceManager.getService(project, CodeAnalyzerInitializer::class.java)!!
project.getService(CodeAnalyzerInitializer::class.java)!!
}
}
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.resolve
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import org.jetbrains.kotlin.config.LanguageVersionSettings
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
@@ -16,6 +15,6 @@ interface LanguageVersionSettingsProvider {
companion object {
fun getInstance(project: Project): LanguageVersionSettingsProvider? =
ServiceManager.getService(project, LanguageVersionSettingsProvider::class.java)
project.getService(LanguageVersionSettingsProvider::class.java)
}
}
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.resolve
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.name.ClassId
@@ -19,6 +18,6 @@ interface ModuleAnnotationsResolver {
companion object {
fun getInstance(project: Project): ModuleAnnotationsResolver =
ServiceManager.getService(project, ModuleAnnotationsResolver::class.java)
project.getService(ModuleAnnotationsResolver::class.java)
}
}
@@ -154,7 +154,7 @@ fun KtElement.getCall(context: BindingContext): Call? {
}
fun KtElement.getParentCall(context: BindingContext, strict: Boolean = true): Call? {
val callExpressionTypes = arrayOf<Class<out KtElement>?>(
val callExpressionTypes = arrayOf(
KtSimpleNameExpression::class.java, KtCallElement::class.java, KtBinaryExpression::class.java,
KtUnaryExpression::class.java, KtArrayAccessExpression::class.java
)
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.resolve.diagnostics;
import com.intellij.openapi.util.AtomicNotNullLazyValue;
import com.intellij.openapi.util.NotNullLazyValue;
import com.intellij.psi.PsiElement;
import com.intellij.util.containers.MultiMap;
import kotlin.collections.CollectionsKt;
@@ -32,17 +32,13 @@ public class DiagnosticsElementsCache {
private final Diagnostics diagnostics;
private final Function1<Diagnostic, Boolean> filter;
private final AtomicNotNullLazyValue<MultiMap<PsiElement, Diagnostic>> elementToDiagnostic = new AtomicNotNullLazyValue<MultiMap<PsiElement, Diagnostic>>() {
@NotNull
@Override
protected MultiMap<PsiElement, Diagnostic> compute() {
return buildElementToDiagnosticCache(diagnostics, filter);
}
};
private final NotNullLazyValue<MultiMap<PsiElement, Diagnostic>> elementToDiagnostic;
public DiagnosticsElementsCache(Diagnostics diagnostics, Function1<Diagnostic, Boolean> filter) {
this.diagnostics = diagnostics;
this.filter = filter;
elementToDiagnostic = NotNullLazyValue.atomicLazy(() -> buildElementToDiagnosticCache(this.diagnostics, this.filter));
}
@NotNull
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.resolve.lazy.declarations
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.search.DelegatingGlobalSearchScope
@@ -45,7 +44,7 @@ abstract class DeclarationProviderFactoryService {
moduleContentScope: GlobalSearchScope,
moduleInfo: ModuleInfo
): DeclarationProviderFactory {
return ServiceManager.getService(project, DeclarationProviderFactoryService::class.java)!!
return project.getService(DeclarationProviderFactoryService::class.java)!!
.create(project, storageManager, syntheticFiles, filteringScope(syntheticFiles, moduleContentScope), moduleInfo)
}
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.javac
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.vfs.StandardFileSystems
import com.intellij.openapi.vfs.VirtualFile
@@ -74,7 +73,7 @@ class JavacWrapper(
private val jarFileSystem = VirtualFileManager.getInstance().getFileSystem(StandardFileSystems.JAR_PROTOCOL)!!
companion object {
fun getInstance(project: Project): JavacWrapper = ServiceManager.getService(project, JavacWrapper::class.java)
fun getInstance(project: Project): JavacWrapper = project.getService(JavacWrapper::class.java)
}
private fun createCommonClassifierType(classId: ClassId) =
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.asJava
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.Project
import org.jetbrains.kotlin.asJava.classes.*
import org.jetbrains.kotlin.config.AnalysisFlags
@@ -71,7 +70,7 @@ abstract class LightClassGenerationSupport {
companion object {
@JvmStatic
fun getInstance(project: Project): LightClassGenerationSupport {
return ServiceManager.getService(project, LightClassGenerationSupport::class.java)
return project.getService(LightClassGenerationSupport::class.java)
}
}
}
@@ -26,13 +26,7 @@ public class KotlinFileType extends LanguageFileType {
public static final String EXTENSION = "kt";
public static final KotlinFileType INSTANCE = new KotlinFileType();
private final NotNullLazyValue<Icon> myIcon = new NotNullLazyValue<Icon>() {
@NotNull
@Override
protected Icon compute() {
return KotlinIconProviderService.getInstance().getFileIcon();
}
};
private final NotNullLazyValue<Icon> myIcon = NotNullLazyValue.lazy(() -> KotlinIconProviderService.getInstance().getFileIcon());
private KotlinFileType() {
super(KotlinLanguage.INSTANCE);
@@ -5,6 +5,8 @@
package org.jetbrains.kotlin.idea;
import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.psi.PsiModifierListOwner;
import org.jetbrains.annotations.NotNull;
@@ -35,7 +37,7 @@ public abstract class KotlinIconProviderService {
}
public static KotlinIconProviderService getInstance() {
KotlinIconProviderService service = ServiceManager.getService(KotlinIconProviderService.class);
KotlinIconProviderService service = ApplicationManager.getApplication().getService(KotlinIconProviderService.class);
return service != null ? service : new CompilerKotlinFileIconProviderService();
}
}
@@ -28,13 +28,7 @@ public class KotlinModuleFileType implements FileType {
public static final String EXTENSION = "kotlin_module";
public static final KotlinModuleFileType INSTANCE = new KotlinModuleFileType();
private final NotNullLazyValue<Icon> myIcon = new NotNullLazyValue<Icon>() {
@NotNull
@Override
protected Icon compute() {
return KotlinIconProviderService.getInstance().getFileIcon();
}
};
private final NotNullLazyValue<Icon> myIcon = NotNullLazyValue.lazy(() -> KotlinIconProviderService.getInstance().getFileIcon());
private KotlinModuleFileType() {}
@@ -17,6 +17,7 @@
package org.jetbrains.kotlin.psi;
import com.intellij.lang.ASTNode;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.psi.PsiElement;
import com.intellij.psi.stubs.IStubElementType;
@@ -68,14 +69,14 @@ public abstract class KtDeclarationStub<T extends StubElement<?>> extends KtModi
@Override
public PsiElement getOriginalElement() {
KotlinDeclarationNavigationPolicy navigationPolicy = ServiceManager.getService(KotlinDeclarationNavigationPolicy.class);
KotlinDeclarationNavigationPolicy navigationPolicy = ApplicationManager.getApplication().getService(KotlinDeclarationNavigationPolicy.class);
return navigationPolicy != null ? navigationPolicy.getOriginalElement(this) : this;
}
@NotNull
@Override
public PsiElement getNavigationElement() {
KotlinDeclarationNavigationPolicy navigationPolicy = ServiceManager.getService(KotlinDeclarationNavigationPolicy.class);
KotlinDeclarationNavigationPolicy navigationPolicy = ApplicationManager.getApplication().getService(KotlinDeclarationNavigationPolicy.class);
return navigationPolicy != null ? navigationPolicy.getNavigationElement(this) : this;
}
}
@@ -17,7 +17,6 @@
package org.jetbrains.kotlin.psi
import com.intellij.extapi.psi.PsiFileBase
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.fileTypes.FileType
import com.intellij.openapi.vfs.VirtualFileWithId
import com.intellij.psi.*
@@ -206,7 +205,7 @@ open class KtFile(viewProvider: FileViewProvider, val isCompiled: Boolean) :
}
override fun getClasses(): Array<PsiClass> {
val fileClassProvider = ServiceManager.getService(project, KtFileClassProvider::class.java)
val fileClassProvider = project.getService(KtFileClassProvider::class.java)
return fileClassProvider?.getFileClasses(this) ?: PsiClass.EMPTY_ARRAY
}
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.psi.stubs.elements
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.application.ApplicationManager
import com.intellij.psi.stubs.IndexSink
import com.intellij.psi.stubs.StubInputStream
import com.intellij.psi.stubs.StubOutputStream
@@ -74,7 +74,7 @@ open class StubIndexService protected constructor() {
companion object {
@JvmStatic
fun getInstance(): StubIndexService {
return ServiceManager.getService(StubIndexService::class.java) ?: NO_INDEX
return ApplicationManager.getApplication().getService(StubIndexService::class.java) ?: NO_INDEX
}
private val NO_INDEX = StubIndexService()
@@ -17,7 +17,6 @@
package org.jetbrains.kotlin.resolve.jvm;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.openapi.project.DumbAware;
import com.intellij.openapi.project.DumbService;
import com.intellij.openapi.project.Project;
@@ -87,7 +86,7 @@ public class KotlinJavaPsiFacade implements Disposable {
private final LightModifierList emptyModifierList;
public static KotlinJavaPsiFacade getInstance(Project project) {
return ServiceManager.getService(project, KotlinJavaPsiFacade.class);
return project.getService(KotlinJavaPsiFacade.class);
}
public KotlinJavaPsiFacade(@NotNull Project project) {
@@ -322,7 +321,7 @@ public class KotlinJavaPsiFacade implements Disposable {
@NotNull
private static JavaFileManager findJavaFileManager(@NotNull Project project) {
JavaFileManager javaFileManager = ServiceManager.getService(project, JavaFileManager.class);
JavaFileManager javaFileManager = project.getService(JavaFileManager.class);
if (javaFileManager == null) {
throw new IllegalStateException("JavaFileManager component is not found in project");
}
@@ -29,6 +29,7 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.lang.reflect.Method;
import java.nio.charset.StandardCharsets;
import java.util.HashSet;
import java.util.Set;
import java.util.regex.Pattern;
@@ -72,7 +73,7 @@ public class KtTestUtil {
shortName = shortName.substring(shortName.lastIndexOf('\\') + 1);
LightVirtualFile virtualFile = new LightVirtualFile(shortName, KotlinLanguage.INSTANCE, StringUtilRt.convertLineSeparators(text));
virtualFile.setCharset(CharsetToolkit.UTF8_CHARSET);
virtualFile.setCharset(StandardCharsets.UTF_8);
PsiFileFactoryImpl factory = (PsiFileFactoryImpl) PsiFileFactory.getInstance(project);
//noinspection ConstantConditions
return (KtFile) factory.trySetupPsiForFile(virtualFile, KotlinLanguage.INSTANCE, true, false);
@@ -12,7 +12,7 @@ dependencies {
testImplementation(projectTests(":compiler:test-infrastructure-utils"))
testRuntimeOnly(commonDependency("net.java.dev.jna:jna"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
}
optInToExperimentalCompilerApi()
+1 -1
View File
@@ -32,7 +32,7 @@ dependencies {
*/
testApi(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil"))
testApi(commonDependency("one.util:streamex"))
testApi(commonDependency("net.java.dev.jna:jna"))
testApi(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
testApi(jpsModel()) { isTransitive = false }
testApi(jpsModelImpl()) { isTransitive = false }
testApi(intellijJavaRt())
@@ -6,8 +6,8 @@
package org.jetbrains.kotlin.test.services.configuration
import com.intellij.ide.highlighter.JavaFileType
import com.intellij.openapi.util.SystemInfo
import com.intellij.psi.PsiJavaModule.MODULE_INFO_FILE
import com.intellij.util.lang.JavaVersion
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
import org.jetbrains.kotlin.backend.jvm.jvmPhases
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
@@ -135,7 +135,7 @@ class JvmEnvironmentConfigurator(testServices: TestServices) : EnvironmentConfig
TestJdkKind.FULL_JDK_6 -> File(System.getenv("JDK_16") ?: error("Environment variable JDK_16 is not set"))
TestJdkKind.FULL_JDK_11 -> KtTestUtil.getJdk11Home()
TestJdkKind.FULL_JDK_17 -> KtTestUtil.getJdk17Home()
TestJdkKind.FULL_JDK -> if (SystemInfo.IS_AT_LEAST_JAVA9) File(System.getProperty("java.home")) else null
TestJdkKind.FULL_JDK -> if (JavaVersion.current() >= JavaVersion.compose(9)) File(System.getProperty("java.home")) else null
TestJdkKind.ANDROID_API -> null
}
+1 -1
View File
@@ -67,7 +67,7 @@ dependencies {
*/
testApi(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil"))
testApi(commonDependency("one.util:streamex"))
testApi(commonDependency("net.java.dev.jna:jna"))
testApi(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
testApi(jpsModel()) { isTransitive = false }
testApi(jpsModelImpl()) { isTransitive = false }
testApi(intellijJavaRt())
@@ -378,7 +378,7 @@ public final class ParametersList implements Cloneable {
}
Map<String, String> env = EnvironmentUtil.getEnvironmentMap();
for (String name : env.keySet()) {
ContainerUtil.putIfAbsent(name, env.get(name), map);
map.putIfAbsent(name, env.get(name));
}
return map;
}
@@ -8,13 +8,13 @@ package org.jetbrains.kotlin.test;
import com.google.common.collect.Lists;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.SystemInfo;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.CharsetToolkit;
import com.intellij.psi.PsiElement;
import com.intellij.rt.execution.junit.FileComparisonFailure;
import com.intellij.testFramework.TestDataFile;
import com.intellij.util.lang.JavaVersion;
import junit.framework.TestCase;
import kotlin.Unit;
import kotlin.collections.CollectionsKt;
@@ -197,7 +197,7 @@ public class KotlinTestUtils {
else if (jdkKind == TestJdkKind.FULL_JDK_17) {
configuration.put(JVMConfigurationKeys.JDK_HOME, KtTestUtil.getJdk17Home());
}
else if (SystemInfo.IS_AT_LEAST_JAVA9) {
else if (JavaVersion.current().compareTo(JavaVersion.compose(9)) >= 0) {
configuration.put(JVMConfigurationKeys.JDK_HOME, new File(System.getProperty("java.home")));
}
@@ -9,7 +9,7 @@ import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.PathManager;
import com.intellij.openapi.application.impl.ApplicationInfoImpl;
import com.intellij.openapi.application.ex.ApplicationManagerEx;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.util.Disposer;
import com.intellij.openapi.util.JDOMUtil;
@@ -159,7 +159,7 @@ public abstract class KtUsefulTestCase extends TestCase {
}
boolean isStressTest = isStressTest();
ApplicationInfoImpl.setInStressTest(isStressTest);
ApplicationManagerEx.setInStressTest(isStressTest);
Registry.getInstance().markAsLoaded();
// turn off Disposer debugging for performance tests
Disposer.setDebugMode(!isStressTest);
@@ -44,7 +44,7 @@ private const val library = "inline fun<T> foo(fn: () -> T): T = fn()"
private const val script = "import foo\nval x = foo { 0 }"
class ReplCompilerJava8Test : KtUsefulTestCase() {
private var tmpdir: File? = null
private lateinit var tmpdir: File
override fun setUp() {
super.setUp()
@@ -54,8 +54,8 @@ class ReplCompilerJava8Test : KtUsefulTestCase() {
val configuration = KotlinTestUtils.newConfiguration(ConfigurationKind.ALL, TestJdkKind.FULL_JDK).apply {
put(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, PrintingMessageCollector(System.out, MessageRenderer.WITHOUT_PATHS, false))
addKotlinSourceRoot(tmpdir!!.absolutePath)
put(JVMConfigurationKeys.OUTPUT_DIRECTORY, tmpdir!!)
addKotlinSourceRoot(tmpdir.absolutePath)
put(JVMConfigurationKeys.OUTPUT_DIRECTORY, tmpdir)
put(JVMConfigurationKeys.JVM_TARGET, JvmTarget.JVM_1_8)
loadScriptingPlugin(this)
}
@@ -17,7 +17,6 @@
package org.jetbrains.kotlin.cli.jvm
import com.intellij.core.CoreJavaFileManager
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.vfs.StandardFileSystems
import com.intellij.psi.search.GlobalSearchScope
import junit.framework.TestCase
@@ -28,8 +27,6 @@ import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
import org.jetbrains.kotlin.cli.jvm.index.JavaRoot
import org.jetbrains.kotlin.cli.jvm.index.JvmDependenciesIndexImpl
import org.jetbrains.kotlin.cli.jvm.index.SingleJavaFileRootsIndex
import org.jetbrains.kotlin.config.LanguageFeature
import org.jetbrains.kotlin.config.languageVersionSettings
import org.jetbrains.kotlin.load.java.structure.impl.JavaClassImpl
import org.jetbrains.kotlin.load.kotlin.VirtualFileFinder
import org.jetbrains.kotlin.name.ClassId
@@ -202,7 +199,7 @@ class KotlinCliJavaFileManagerTest : KotlinTestWithEnvironment() {
@Suppress("UNUSED_VARIABLE") // used to implicitly initialize classpath/index in the manager
val coreJavaFileFinder = VirtualFileFinder.SERVICE.getInstance(project)
val coreJavaFileManager = ServiceManager.getService(project, CoreJavaFileManager::class.java) as KotlinCliJavaFileManagerImpl
val coreJavaFileManager = project.getService(CoreJavaFileManager::class.java) as KotlinCliJavaFileManagerImpl
val root = StandardFileSystems.local().findFileByPath(javaFilesDir.path)!!
coreJavaFileManager.initialize(
@@ -69,7 +69,7 @@ class KotlinClassFinderTest : KotlinTestWithEnvironmentManagement() {
assertEquals("test/A.B.C", binaryClass.classId.toString())
}
private fun createEnvironment(tmpdir: File?): KotlinCoreEnvironment {
private fun createEnvironment(tmpdir: File): KotlinCoreEnvironment {
return KotlinCoreEnvironment.createForTests(
testRootDisposable,
KotlinTestUtils.newConfiguration(ConfigurationKind.ALL, TestJdkKind.MOCK_JDK, tmpdir),
@@ -89,7 +89,7 @@ class KotlinJavacBasedClassFinderTest : KotlinTestWithEnvironmentManagement() {
javaSearchScopeField.set(this, GlobalSearchScope.allScope(project))
}
private fun createEnvironment(tmpdir: File?, files: List<File> = emptyList()): KotlinCoreEnvironment {
private fun createEnvironment(tmpdir: File, files: List<File> = emptyList()): KotlinCoreEnvironment {
return KotlinCoreEnvironment.createForTests(
testRootDisposable,
KotlinTestUtils.newConfiguration(ConfigurationKind.ALL, TestJdkKind.MOCK_JDK, tmpdir),
@@ -17,7 +17,8 @@ open class ApplicationExtensionDescriptor<T : Any>(name: String, private val ext
ApplicationManager.getApplication().extensionArea.registerExtensionPoint(
extensionPointName.name,
extensionClass.name,
ExtensionPoint.Kind.INTERFACE
ExtensionPoint.Kind.INTERFACE,
false
)
}
@@ -16,7 +16,8 @@ open class ProjectExtensionDescriptor<T : Any>(name: String, private val extensi
project.extensionArea.registerExtensionPoint(
extensionPointName.name,
extensionClass.name,
ExtensionPoint.Kind.INTERFACE
ExtensionPoint.Kind.INTERFACE,
false
)
}
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.utils
import java.io.File
import java.lang.IllegalStateException
import com.intellij.openapi.util.SystemInfo
import com.intellij.util.lang.JavaVersion
interface KotlinPaths {
val homePath: File
@@ -115,8 +115,8 @@ interface KotlinPaths {
Empty(),
StdLib(Jar.StdLib, gen = {
when {
SystemInfo.isJavaVersionAtLeast(1, 8, 0) -> listOf(Jar.StdLibJdk7, Jar.StdLibJdk8)
SystemInfo.isJavaVersionAtLeast(1, 7, 0) -> listOf(Jar.StdLibJdk7)
JavaVersion.current() >= JavaVersion.compose(8) -> listOf(Jar.StdLibJdk7, Jar.StdLibJdk8)
JavaVersion.current() >= JavaVersion.compose(7) -> listOf(Jar.StdLibJdk7)
else -> emptyList()
}
}),
@@ -21,6 +21,7 @@ import com.intellij.openapi.application.PathManager
import org.jetbrains.jps.model.java.impl.JavaSdkUtil
import java.io.File
import java.nio.file.Paths
import java.util.regex.Pattern
object PathUtil {
@@ -178,15 +179,15 @@ object PathUtil {
@JvmStatic
fun getJdkClassesRootsFromJre(javaHome: String): List<File> =
JavaSdkUtil.getJdkClassesRoots(File(javaHome), true)
JavaSdkUtil.getJdkClassesRoots(Paths.get(javaHome), true).map { it.toFile() }
@JvmStatic
fun getJdkClassesRoots(jdkHome: File): List<File> =
JavaSdkUtil.getJdkClassesRoots(jdkHome, false)
JavaSdkUtil.getJdkClassesRoots(jdkHome.toPath(), false).map { it.toFile() }
@JvmStatic
fun getJdkClassesRootsFromJdkOrJre(javaRoot: File): List<File> {
val isJdk = File(javaRoot, "jre/lib").exists()
return JavaSdkUtil.getJdkClassesRoots(javaRoot, !isJdk)
return JavaSdkUtil.getJdkClassesRoots(javaRoot.toPath(), !isJdk).map { it.toFile() }
}
}
+1 -1
View File
@@ -20,7 +20,7 @@ dependencies {
testImplementation(projectTests(":generators:test-generator"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil"))
testRuntimeOnly(commonDependency("net.java.dev.jna:jna"))
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.jna:jna"))
}
val generationRoot = projectDir.resolve("tests-gen")