Minor, rename dangerous getInternalName(), remove unused
FQ name can only be converted to an internal name correctly if it represents a top-level class
This commit is contained in:
+11
-20
@@ -22,30 +22,21 @@ import org.jetbrains.kotlin.psi.KtFile
|
|||||||
import org.jetbrains.kotlin.resolve.jvm.JvmClassName
|
import org.jetbrains.kotlin.resolve.jvm.JvmClassName
|
||||||
import org.jetbrains.org.objectweb.asm.Type
|
import org.jetbrains.org.objectweb.asm.Type
|
||||||
|
|
||||||
public interface JvmFileClassesProvider {
|
interface JvmFileClassesProvider {
|
||||||
public fun getFileClassInfo(file: KtFile): JvmFileClassInfo
|
fun getFileClassInfo(file: KtFile): JvmFileClassInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
public fun FqName.getInternalName(): String =
|
val FqName.internalNameWithoutInnerClasses: String
|
||||||
JvmClassName.byFqNameWithoutInnerClasses(this).internalName
|
get() = JvmClassName.byFqNameWithoutInnerClasses(this).internalName
|
||||||
|
|
||||||
public fun FqName.getClassType(): Type =
|
fun JvmFileClassesProvider.getFileClassFqName(file: KtFile): FqName =
|
||||||
Type.getObjectType(getInternalName())
|
|
||||||
|
|
||||||
public fun JvmFileClassesProvider.getFileClassFqName(file: KtFile): FqName =
|
|
||||||
getFileClassInfo(file).fileClassFqName
|
getFileClassInfo(file).fileClassFqName
|
||||||
|
|
||||||
public fun JvmFileClassesProvider.getFileClassInternalName(file: KtFile): String =
|
fun JvmFileClassesProvider.getFileClassInternalName(file: KtFile): String =
|
||||||
getFileClassFqName(file).getInternalName()
|
getFileClassFqName(file).internalNameWithoutInnerClasses
|
||||||
|
|
||||||
public fun JvmFileClassesProvider.getFileClassType(file: KtFile): Type =
|
fun JvmFileClassesProvider.getFileClassType(file: KtFile): Type =
|
||||||
getFileClassFqName(file).getClassType()
|
Type.getObjectType(getFileClassFqName(file).internalNameWithoutInnerClasses)
|
||||||
|
|
||||||
public fun JvmFileClassesProvider.getFacadeClassFqName(file: KtFile): FqName =
|
fun JvmFileClassesProvider.getFacadeClassInternalName(file: KtFile): String =
|
||||||
getFileClassInfo(file).facadeClassFqName
|
getFileClassInfo(file).facadeClassFqName.internalNameWithoutInnerClasses
|
||||||
|
|
||||||
public fun JvmFileClassesProvider.getFacadeClassInternalName(file: KtFile): String =
|
|
||||||
getFacadeClassFqName(file).getInternalName()
|
|
||||||
|
|
||||||
public fun JvmFileClassesProvider.getFacadeClassType(file: KtFile): Type =
|
|
||||||
getFacadeClassFqName(file).getClassType()
|
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
|||||||
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil
|
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil
|
||||||
import org.jetbrains.kotlin.fileClasses.NoResolveFileClassesProvider
|
import org.jetbrains.kotlin.fileClasses.NoResolveFileClassesProvider
|
||||||
import org.jetbrains.kotlin.fileClasses.getFileClassInternalName
|
import org.jetbrains.kotlin.fileClasses.getFileClassInternalName
|
||||||
import org.jetbrains.kotlin.fileClasses.getInternalName
|
import org.jetbrains.kotlin.fileClasses.internalNameWithoutInnerClasses
|
||||||
import org.jetbrains.kotlin.idea.caches.resolve.analyzeAndGetResult
|
import org.jetbrains.kotlin.idea.caches.resolve.analyzeAndGetResult
|
||||||
import org.jetbrains.kotlin.idea.caches.resolve.analyzeFullyAndGetResult
|
import org.jetbrains.kotlin.idea.caches.resolve.analyzeFullyAndGetResult
|
||||||
import org.jetbrains.kotlin.idea.codeInsight.CodeInsightUtils
|
import org.jetbrains.kotlin.idea.codeInsight.CodeInsightUtils
|
||||||
@@ -224,7 +224,8 @@ public class KotlinPositionManager(private val myDebugProcess: DebugProcess) : M
|
|||||||
if (psiFile is ClsFileImpl) {
|
if (psiFile is ClsFileImpl) {
|
||||||
val decompiledPsiFile = runReadAction { psiFile.decompiledPsiFile }
|
val decompiledPsiFile = runReadAction { psiFile.decompiledPsiFile }
|
||||||
if (decompiledPsiFile is KtClsFile && sourcePosition.line == -1) {
|
if (decompiledPsiFile is KtClsFile && sourcePosition.line == -1) {
|
||||||
val className = JvmFileClassUtil.getFileClassInfoNoResolve(decompiledPsiFile).fileClassFqName.getInternalName()
|
val className =
|
||||||
|
JvmFileClassUtil.getFileClassInfoNoResolve(decompiledPsiFile).fileClassFqName.internalNameWithoutInnerClasses
|
||||||
return myDebugProcess.virtualMachineProxy.classesByName(className)
|
return myDebugProcess.virtualMachineProxy.classesByName(className)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user