Make script detection API generic, fix tests

This commit is contained in:
Ilya Chernikov
2016-06-07 10:54:28 +02:00
parent 3393d7b7d2
commit e8c13882b4
10 changed files with 34 additions and 26 deletions
@@ -44,6 +44,7 @@ import com.intellij.openapi.project.Project
import com.intellij.openapi.util.Disposer
import com.intellij.openapi.vfs.CharsetToolkit
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.PsiFile
import com.intellij.psi.PsiFileFactory
import com.intellij.psi.PsiManager
import com.intellij.psi.impl.PsiFileFactoryImpl
@@ -123,7 +124,14 @@ class KotlinConsoleRunner(
private val consoleScriptDefinition = object : KotlinScriptDefinition {
override val name = "Kotlin REPL"
override fun isScript(file: VirtualFile) = file == consoleView.virtualFile
override fun <TF> isScript(file: TF): Boolean {
val vf = when (file) {
is PsiFile -> file.originalFile.virtualFile
is VirtualFile -> file
else -> return false
}
return vf == consoleView.virtualFile
}
override fun getScriptParameters(scriptDescriptor: ScriptDescriptor) = emptyList<ScriptParameter>()
override fun getScriptName(script: KtScript) = Name.identifier("REPL")
}