181: FakeFileForLightClass made return "virtualFile" from "ktFile"

This commit is contained in:
Nicolay Mitropolsky
2018-03-01 21:51:07 +03:00
committed by Nikolay Krasko
parent 44a37f5dad
commit 94d18581e3
2 changed files with 46 additions and 1 deletions
@@ -16,6 +16,7 @@
package org.jetbrains.kotlin.asJava.elements
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.pom.java.LanguageLevel
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiElementVisitor
@@ -33,6 +34,10 @@ open class FakeFileForLightClass(
private val stub: () -> PsiClassHolderFileStub<*>,
private val packageFqName: FqName = ktFile.packageFqName
) : ClsFileImpl(ktFile.viewProvider) {
override fun getVirtualFile(): VirtualFile =
ktFile.virtualFile ?: ktFile.originalFile.virtualFile ?: super.getVirtualFile()
override fun getPackageName() = packageFqName.asString()
override fun getStub() = stub()