Provide a method to update script definitions after loading into IDE
also documenting ScriptDefinitionsProvider
This commit is contained in:
+11
-6
@@ -178,14 +178,10 @@ abstract class ScriptDefinition : UserDataHolderBase() {
|
||||
override val evaluationConfiguration: ScriptEvaluationConfiguration?
|
||||
) : FromConfigurationsBase()
|
||||
|
||||
open class FromTemplate(
|
||||
open class FromNewDefinition(
|
||||
private val baseHostConfiguration: ScriptingHostConfiguration,
|
||||
template: KClass<*>,
|
||||
contextClass: KClass<*> = ScriptCompilationConfiguration::class
|
||||
private val definition: kotlin.script.experimental.host.ScriptDefinition
|
||||
) : FromConfigurationsBase() {
|
||||
|
||||
private val definition = createScriptDefinitionFromTemplate(KotlinType(template), baseHostConfiguration, contextClass)
|
||||
|
||||
override val hostConfiguration: ScriptingHostConfiguration
|
||||
get() = definition.compilationConfiguration[ScriptCompilationConfiguration.hostConfiguration] ?: baseHostConfiguration
|
||||
|
||||
@@ -193,6 +189,15 @@ abstract class ScriptDefinition : UserDataHolderBase() {
|
||||
override val evaluationConfiguration: ScriptEvaluationConfiguration get() = definition.evaluationConfiguration
|
||||
}
|
||||
|
||||
open class FromTemplate(
|
||||
baseHostConfiguration: ScriptingHostConfiguration,
|
||||
template: KClass<*>,
|
||||
contextClass: KClass<*> = ScriptCompilationConfiguration::class
|
||||
) : FromNewDefinition(
|
||||
baseHostConfiguration,
|
||||
createScriptDefinitionFromTemplate(KotlinType(template), baseHostConfiguration, contextClass)
|
||||
)
|
||||
|
||||
companion object {
|
||||
fun getDefault(hostConfiguration: ScriptingHostConfiguration) =
|
||||
object : FromLegacy(hostConfiguration, StandardScriptDefinition) {
|
||||
|
||||
Reference in New Issue
Block a user