Add support for UltraLightScripts

This commit is contained in:
Igor Yakovlev
2020-04-30 22:24:14 +03:00
parent 6a2461f2c6
commit 62c24c95b5
16 changed files with 404 additions and 51 deletions
@@ -17,7 +17,6 @@
package org.jetbrains.kotlin.cli.jvm.compiler
import com.intellij.psi.PsiManager
import com.intellij.psi.search.GlobalSearchScope
import com.intellij.psi.util.CachedValue
import org.jetbrains.kotlin.asJava.LightClassBuilder
import org.jetbrains.kotlin.asJava.LightClassGenerationSupport
@@ -25,7 +24,9 @@ import org.jetbrains.kotlin.asJava.builder.InvalidLightClassDataHolder
import org.jetbrains.kotlin.asJava.builder.LightClassConstructionContext
import org.jetbrains.kotlin.asJava.builder.LightClassDataHolder
import org.jetbrains.kotlin.asJava.builder.LightClassDataHolderImpl
import org.jetbrains.kotlin.asJava.classes.KtUltraLightClass
import org.jetbrains.kotlin.asJava.classes.KtUltraLightClassForFacade
import org.jetbrains.kotlin.asJava.classes.KtUltraLightClassForScript
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.psi.*
@@ -52,7 +53,9 @@ class CliLightClassGenerationSupport(private val traceHolder: CliTraceHolder) :
files: Collection<KtFile>
): KtUltraLightClassForFacade? = null
override fun createUltraLightClass(element: KtClassOrObject) = null
override fun createUltraLightClass(element: KtClassOrObject): KtUltraLightClass? = null
override fun createUltraLightClassForScript(script: KtScript): KtUltraLightClassForScript? = null
override fun createDataHolderForClass(classOrObject: KtClassOrObject, builder: LightClassBuilder): LightClassDataHolder.ForClass {
//force resolve companion for light class generation