Implement support for additional receivers for script in frontend
This commit is contained in:
+8
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.name.NameUtils
|
||||
import org.jetbrains.kotlin.psi.KtScript
|
||||
import org.jetbrains.kotlin.script.KotlinScriptDefinition
|
||||
import kotlin.reflect.KClass
|
||||
import kotlin.reflect.KType
|
||||
import kotlin.script.experimental.api.ScriptCompileConfigurationParams
|
||||
import kotlin.script.experimental.api.ScriptDefinition
|
||||
import kotlin.script.experimental.api.resultOrNull
|
||||
@@ -47,6 +48,13 @@ class KotlinScriptDefinitionAdapterFromNewAPI(val scriptDefinition: ScriptDefini
|
||||
}.resultOrNull()?.getOrNull(ScriptCompileConfigurationParams.updateConfigurationOnAnnotations)?.toList()
|
||||
?: emptyList()
|
||||
}
|
||||
|
||||
override val implicitReceivers: List<KType> by lazy {
|
||||
runBlocking {
|
||||
scriptDefinition.configurator.baseConfiguration(null)
|
||||
}.resultOrNull()?.getOrNull(ScriptCompileConfigurationParams.scriptSignature)?.providedDeclarations?.implicitReceivers
|
||||
?: emptyList()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user