[lc] support decompiled facade only for .class
we have support only for KtClsFile (see decompiled light classes) so kotlin_builtins and kotlin_metadata should be ignored ^KT-53543
This commit is contained in:
+1
-1
@@ -113,7 +113,7 @@ object DecompiledLightClassesFactory {
|
||||
): KtLightClassForFacade? {
|
||||
assert(files.all(KtFile::isCompiled))
|
||||
val file = files.firstOrNull { it.javaFileFacadeFqName == facadeClassFqName } as? KtClsFile
|
||||
?: error("Can't find the representative decompiled file for $facadeClassFqName")
|
||||
?: error("Can't find the representative decompiled file for $facadeClassFqName in ${files.map { it.name }}")
|
||||
|
||||
return createLightClassForDecompiledKotlinFile(project, file) { kotlinClsFile, javaClsClass, classOrObject ->
|
||||
KtLightClassForDecompiledFacade(javaClsClass, javaClsClass.parent, kotlinClsFile, classOrObject, files)
|
||||
|
||||
@@ -20,6 +20,7 @@ import org.jetbrains.kotlin.psi.KtFile
|
||||
abstract class KotlinAsJavaSupportBase<TModule>(protected val project: Project) : KotlinAsJavaSupport() {
|
||||
fun createLightFacade(file: KtFile): KtLightClassForFacade? {
|
||||
if (file.isScript()) return null
|
||||
if (file.isCompiled && !file.name.endsWith(".class")) return null
|
||||
|
||||
val module = file.findModule().takeIf { facadeIsApplicable(it, file) } ?: return null
|
||||
val facadeFqName = file.javaFileFacadeFqName
|
||||
|
||||
Reference in New Issue
Block a user