diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/fileClasses/JvmFileClassUtil.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/fileClasses/JvmFileClassUtil.kt index 3db8cb05e88..99c3d87f428 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/fileClasses/JvmFileClassUtil.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/fileClasses/JvmFileClassUtil.kt @@ -22,16 +22,12 @@ import com.intellij.psi.util.CachedValuesManager import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor import org.jetbrains.kotlin.load.java.descriptors.getImplClassNameForDeserialized import org.jetbrains.kotlin.load.java.descriptors.getImplClassNameForProto -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.psi.* -import org.jetbrains.kotlin.serialization.ProtoBuf import org.jetbrains.kotlin.serialization.deserialization.NameResolver import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedCallableMemberDescriptor -import org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf - public object JvmFileClassUtil { public val JVM_NAME: FqName = FqName("kotlin.jvm.JvmName") diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/StubClassBuilder.java b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/StubClassBuilder.java index fd5bfeefc7e..b8543c12bdf 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/StubClassBuilder.java +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/StubClassBuilder.java @@ -25,7 +25,7 @@ import com.intellij.util.containers.Stack; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.codegen.AbstractClassBuilder; -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils; +import org.jetbrains.kotlin.load.kotlin.OldPackageFacadeClassUtils; import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.psi.KtFile; import org.jetbrains.kotlin.resolve.jvm.diagnostics.JvmDeclarationOrigin; @@ -81,7 +81,7 @@ public class StubClassBuilder extends AbstractClassBuilder { if (origin instanceof KtFile) { FqName packageName = ((KtFile) origin).getPackageFqName(); - String packageClassName = PackageClassUtils.getPackageClassName(packageName); + String packageClassName = OldPackageFacadeClassUtils.getPackageClassName(packageName); if (name.equals(packageClassName) || name.endsWith("/" + packageClassName)) { isPackageClass = true; diff --git a/compiler/tests/org/jetbrains/kotlin/cli/CliCommonTest.java b/compiler/tests/org/jetbrains/kotlin/cli/CliCommonTest.java index 506db316c92..04a95fd00e5 100644 --- a/compiler/tests/org/jetbrains/kotlin/cli/CliCommonTest.java +++ b/compiler/tests/org/jetbrains/kotlin/cli/CliCommonTest.java @@ -16,8 +16,6 @@ package org.jetbrains.kotlin.cli; -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils; -import org.jetbrains.kotlin.name.FqName; import org.junit.Assert; import org.junit.Test; diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/AnnotationGenTest.java b/compiler/tests/org/jetbrains/kotlin/codegen/AnnotationGenTest.java index c218cf4db7d..c03c745cd6b 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/AnnotationGenTest.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/AnnotationGenTest.java @@ -18,7 +18,6 @@ package org.jetbrains.kotlin.codegen; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils; import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils; import org.jetbrains.kotlin.test.ConfigurationKind; diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/ClassGenTest.java b/compiler/tests/org/jetbrains/kotlin/codegen/ClassGenTest.java index 908f19aae48..a64710dfbb6 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/ClassGenTest.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/ClassGenTest.java @@ -16,8 +16,6 @@ package org.jetbrains.kotlin.codegen; -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils; -import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.name.SpecialNames; import org.jetbrains.kotlin.test.ConfigurationKind; diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/KotlinPackageAnnotationTest.java b/compiler/tests/org/jetbrains/kotlin/codegen/KotlinPackageAnnotationTest.java index ebe8f188e93..8b79284aaa2 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/KotlinPackageAnnotationTest.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/KotlinPackageAnnotationTest.java @@ -18,8 +18,6 @@ package org.jetbrains.kotlin.codegen; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.load.java.JvmAnnotationNames; -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils; -import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils; import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.serialization.PackageData; import org.jetbrains.kotlin.serialization.ProtoBuf; diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/SyntheticMethodForAnnotatedPropertyGenTest.java b/compiler/tests/org/jetbrains/kotlin/codegen/SyntheticMethodForAnnotatedPropertyGenTest.java index 3c557339894..7bc7b39731b 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/SyntheticMethodForAnnotatedPropertyGenTest.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/SyntheticMethodForAnnotatedPropertyGenTest.java @@ -17,10 +17,7 @@ package org.jetbrains.kotlin.codegen; import org.jetbrains.annotations.NotNull; -import org.jetbrains.kotlin.backend.common.output.OutputFile; import org.jetbrains.kotlin.load.java.JvmAbi; -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils; -import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.name.Name; import org.jetbrains.kotlin.test.ConfigurationKind; diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractSMAPBaseTest.kt b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractSMAPBaseTest.kt index 6cb649b66c9..6deb81d5434 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractSMAPBaseTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/AbstractSMAPBaseTest.kt @@ -19,8 +19,6 @@ package org.jetbrains.kotlin.jvm.compiler import com.intellij.openapi.util.io.FileUtil import org.jetbrains.kotlin.backend.common.output.OutputFile import org.jetbrains.kotlin.codegen.inline.InlineCodegenUtil -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils -import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.test.InTextDirectivesUtils import org.jetbrains.org.objectweb.asm.ClassReader diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/PackageClassUtils.java b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/OldPackageFacadeClassUtils.java similarity index 90% rename from core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/PackageClassUtils.java rename to core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/OldPackageFacadeClassUtils.java index 9e880aa6931..5c9cfe87fe2 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/PackageClassUtils.java +++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/OldPackageFacadeClassUtils.java @@ -17,16 +17,15 @@ package org.jetbrains.kotlin.load.kotlin; import org.jetbrains.annotations.NotNull; -import org.jetbrains.kotlin.resolve.jvm.JvmClassName; import org.jetbrains.kotlin.name.ClassId; import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.name.Name; -public final class PackageClassUtils { - public static final String PACKAGE_CLASS_NAME_SUFFIX = "Package"; +public final class OldPackageFacadeClassUtils { + private static final String PACKAGE_CLASS_NAME_SUFFIX = "Package"; private static final String DEFAULT_PACKAGE_CLASS_NAME = "_Default" + PACKAGE_CLASS_NAME_SUFFIX; - private PackageClassUtils() { + private OldPackageFacadeClassUtils() { } // ex. -> _DefaultPackage, a -> APackage, a.b -> BPackage diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/DecompiledNavigationUtils.java b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/DecompiledNavigationUtils.java index 4c5539c7fc7..dba41456e5e 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/DecompiledNavigationUtils.java +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/DecompiledNavigationUtils.java @@ -46,7 +46,7 @@ import org.jetbrains.kotlin.types.expressions.ExpressionTypingUtils; import java.util.Collection; -import static org.jetbrains.kotlin.load.kotlin.PackageClassUtils.getPackageClassId; +import static org.jetbrains.kotlin.load.kotlin.OldPackageFacadeClassUtils.getPackageClassId; public final class DecompiledNavigationUtils { diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DecompiledTextFactory.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DecompiledTextFactory.kt index 64d7ddafcc5..8516aed51a1 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DecompiledTextFactory.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DecompiledTextFactory.kt @@ -23,7 +23,7 @@ import org.jetbrains.kotlin.idea.decompiler.findMultifileClassParts import org.jetbrains.kotlin.idea.decompiler.navigation.JsMetaFileUtils import org.jetbrains.kotlin.load.java.JvmAbi import org.jetbrains.kotlin.load.kotlin.KotlinBinaryClassCache -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils +import org.jetbrains.kotlin.load.kotlin.OldPackageFacadeClassUtils import org.jetbrains.kotlin.load.kotlin.header.isCompatibleClassKind import org.jetbrains.kotlin.load.kotlin.header.isCompatibleFileFacadeKind import org.jetbrains.kotlin.load.kotlin.header.isCompatibleMultifileClassKind @@ -100,7 +100,7 @@ public fun buildDecompiledTextFromJsMetadata( } private fun resolveDeclarationsInPackage(packageFqName: FqName, resolver: ResolverForDecompiler) = - ArrayList(resolver.resolveDeclarationsInFacade(PackageClassUtils.getPackageClassFqName(packageFqName))) + ArrayList(resolver.resolveDeclarationsInFacade(OldPackageFacadeClassUtils.getPackageClassFqName(packageFqName))) private val DECOMPILED_CODE_COMMENT = "/* compiled code */" private val DECOMPILED_COMMENT_FOR_PARAMETER = "/* = compiled code */" diff --git a/idea/src/org/jetbrains/kotlin/idea/debugger/breakpoints/KotlinFieldBreakpoint.kt b/idea/src/org/jetbrains/kotlin/idea/debugger/breakpoints/KotlinFieldBreakpoint.kt index f9698366ab1..252047ea608 100644 --- a/idea/src/org/jetbrains/kotlin/idea/debugger/breakpoints/KotlinFieldBreakpoint.kt +++ b/idea/src/org/jetbrains/kotlin/idea/debugger/breakpoints/KotlinFieldBreakpoint.kt @@ -47,7 +47,6 @@ import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.util.application.runReadAction import org.jetbrains.kotlin.load.java.JvmAbi -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils import org.jetbrains.kotlin.psi.KtCallableDeclaration import org.jetbrains.kotlin.psi.KtClassOrObject import org.jetbrains.kotlin.psi.KtParameter diff --git a/idea/tests/org/jetbrains/kotlin/idea/decompiler/stubBuilder/KotlinJavaScriptStubConsistencyTest.kt b/idea/tests/org/jetbrains/kotlin/idea/decompiler/stubBuilder/KotlinJavaScriptStubConsistencyTest.kt index 2b9931c817f..d6cd3a4af0d 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/decompiler/stubBuilder/KotlinJavaScriptStubConsistencyTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/decompiler/stubBuilder/KotlinJavaScriptStubConsistencyTest.kt @@ -20,7 +20,7 @@ import com.intellij.openapi.vfs.VirtualFile import org.jetbrains.kotlin.idea.decompiler.textBuilder.buildDecompiledTextFromJsMetadata import org.jetbrains.kotlin.idea.test.KotlinStdJSProjectDescriptor import org.jetbrains.kotlin.idea.vfilefinder.JsVirtualFileFinder -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils +import org.jetbrains.kotlin.load.kotlin.OldPackageFacadeClassUtils import org.jetbrains.kotlin.load.kotlin.VirtualFileFinder import org.jetbrains.kotlin.name.FqName @@ -28,7 +28,7 @@ public class KotlinJavaScriptStubConsistencyTest : StubConsistencyBaseTest() { override fun getFileIds() = listOf( "java.util", "jquery", "jquery.ui", "kotlin", "kotlin.browser", "kotlin.dom", "kotlin.js" - ).map { PackageClassUtils.getPackageClassId(FqName(it)) } + ).map { OldPackageFacadeClassUtils.getPackageClassId(FqName(it)) } override fun getVirtualFileFinder(): VirtualFileFinder = JsVirtualFileFinder.SERVICE.getInstance(getProject()) diff --git a/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/KotlinJavaScriptDecompiledTextConsistencyTest.kt b/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/KotlinJavaScriptDecompiledTextConsistencyTest.kt index 851a97f79cc..7b006fb9cde 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/KotlinJavaScriptDecompiledTextConsistencyTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/KotlinJavaScriptDecompiledTextConsistencyTest.kt @@ -23,7 +23,7 @@ import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor import org.jetbrains.kotlin.idea.test.KotlinStdJSProjectDescriptor import org.jetbrains.kotlin.idea.vfilefinder.JsVirtualFileFinder import org.jetbrains.kotlin.js.resolve.JsPlatform -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils +import org.jetbrains.kotlin.load.kotlin.OldPackageFacadeClassUtils import org.jetbrains.kotlin.load.kotlin.VirtualFileFinder import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.serialization.js.KotlinJavascriptSerializationUtil @@ -65,6 +65,6 @@ public class KotlinJavaScriptDecompiledTextConsistencyTest : TextConsistencyBase override fun isFromFacade(descriptor: CallableMemberDescriptor, facadeFqName: FqName): Boolean { val containingDeclaration = descriptor.containingDeclaration return containingDeclaration is PackageFragmentDescriptor && - facadeFqName == PackageClassUtils.getPackageClassFqName(containingDeclaration.fqName) + facadeFqName == OldPackageFacadeClassUtils.getPackageClassFqName(containingDeclaration.fqName) } } diff --git a/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/TextConsistencyBaseTest.kt b/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/TextConsistencyBaseTest.kt index cac65cf6775..2180b66537b 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/TextConsistencyBaseTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/decompiler/textBuilder/TextConsistencyBaseTest.kt @@ -17,14 +17,13 @@ package org.jetbrains.kotlin.idea.decompiler.textBuilder import com.intellij.openapi.vfs.VirtualFile -import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase import org.jetbrains.kotlin.incremental.components.NoLookupLocation -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils +import org.jetbrains.kotlin.load.kotlin.OldPackageFacadeClassUtils import org.jetbrains.kotlin.load.kotlin.VirtualFileFinder import org.jetbrains.kotlin.name.ClassId import org.jetbrains.kotlin.name.FqName @@ -55,7 +54,7 @@ public abstract class TextConsistencyBaseTest : KotlinLightCodeInsightFixtureTes } private fun doTestPackage(packageFqName: FqName) { - doTestClass(packageFqName, PackageClassUtils.getPackageClassId(packageFqName)) + doTestClass(packageFqName, OldPackageFacadeClassUtils.getPackageClassId(packageFqName)) } private fun doTestFacade(facadeFqName: FqName) { diff --git a/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt b/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt index c9dd9e3bb63..17562b6ee5f 100644 --- a/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt +++ b/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt @@ -28,7 +28,6 @@ import org.jetbrains.jps.builders.impl.BuildTargetRegistryImpl import org.jetbrains.jps.builders.impl.TargetOutputIndexImpl import org.jetbrains.jps.builders.java.JavaBuilderUtil import org.jetbrains.jps.builders.java.JavaSourceRootDescriptor -import org.jetbrains.jps.builders.java.dependencyView.Mappings import org.jetbrains.jps.incremental.* import org.jetbrains.jps.incremental.ModuleLevelBuilder.ExitCode.* import org.jetbrains.jps.incremental.fs.CompilationRound @@ -53,18 +52,16 @@ import org.jetbrains.kotlin.config.CompilerRunnerConstants import org.jetbrains.kotlin.config.CompilerRunnerConstants.INTERNAL_ERROR_PREFIX import org.jetbrains.kotlin.config.IncrementalCompilation import org.jetbrains.kotlin.config.Services +import org.jetbrains.kotlin.daemon.common.isDaemonEnabled import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.jps.JpsKotlinCompilerSettings import org.jetbrains.kotlin.jps.incremental.* import org.jetbrains.kotlin.load.kotlin.ModuleMapping -import org.jetbrains.kotlin.load.kotlin.PackageClassUtils import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCache import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCompilationComponents import org.jetbrains.kotlin.modules.TargetId import org.jetbrains.kotlin.progress.CompilationCanceledException import org.jetbrains.kotlin.progress.CompilationCanceledStatus -import org.jetbrains.kotlin.resolve.jvm.JvmClassName -import org.jetbrains.kotlin.daemon.common.isDaemonEnabled import org.jetbrains.kotlin.utils.LibraryUtils import org.jetbrains.kotlin.utils.PathUtil import org.jetbrains.kotlin.utils.keysToMap @@ -417,20 +414,6 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR filesToCompile: MultiMap, generatedClasses: List ) { - fun getOldSourceFiles(generatedClass: GeneratedJvmClass, previousMappings: Mappings): Collection { - if (!generatedClass.outputFile.getName().endsWith(PackageClassUtils.PACKAGE_CLASS_NAME_SUFFIX + ".class")) return emptySet() - - val classInternalName = JvmClassName.byClassId(generatedClass.outputClass.getClassId()).getInternalName() - val oldClassSources = previousMappings.getClassSources(previousMappings.getName(classInternalName)) - if (oldClassSources == null) return emptySet() - - val sources = THashSet(FileUtil.FILE_HASHING_STRATEGY) - sources.addAll(oldClassSources) - sources.removeAll(filesToCompile[generatedClass.target]) - sources.removeAll(dirtyFilesHolder.getRemovedFiles(generatedClass.target).map { File(it) }) - return sources - } - assert(IncrementalCompilation.isEnabled()) { "updateJavaMappings should not be called when incremental compilation disabled" } val previousMappings = context.getProjectDescriptor().dataManager.getMappings() @@ -438,15 +421,10 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR val callback = delta.getCallback() for (generatedClass in generatedClasses) { - val outputFile = generatedClass.outputFile - val outputClass = generatedClass.outputClass - - // For package facade classes: we need to report all source files for it, not only currently compiled - val allSourcesIncludingOld = getOldSourceFiles(generatedClass, previousMappings) + generatedClass.sourceFiles - - callback.associate(FileUtil.toSystemIndependentName(outputFile.getAbsolutePath()), - allSourcesIncludingOld.map { FileUtil.toSystemIndependentName(it.getAbsolutePath()) }, - ClassReader(outputClass.getFileContents()) + callback.associate( + FileUtil.toSystemIndependentName(generatedClass.outputFile.getAbsolutePath()), + generatedClass.sourceFiles.map { FileUtil.toSystemIndependentName(it.getAbsolutePath()) }, + ClassReader(generatedClass.outputClass.getFileContents()) ) }