Rename ScriptingEnvironment to ScriptingHostConfiguration
This commit is contained in:
+6
-6
@@ -8,24 +8,24 @@ package kotlin.script.experimental.jvmhost
|
||||
import kotlin.script.experimental.api.KotlinType
|
||||
import kotlin.script.experimental.api.ScriptCompilationConfiguration
|
||||
import kotlin.script.experimental.api.ScriptEvaluator
|
||||
import kotlin.script.experimental.api.ScriptingEnvironment
|
||||
import kotlin.script.experimental.configuration.createScriptCompilationConfigurationFromAnnotatedBaseClass
|
||||
import kotlin.script.experimental.host.ScriptingHostConfiguration
|
||||
import kotlin.script.experimental.host.createScriptCompilationConfigurationFromAnnotatedBaseClass
|
||||
import kotlin.script.experimental.host.BasicScriptingHost
|
||||
import kotlin.script.experimental.jvm.defaultJvmScriptingEnvironment
|
||||
|
||||
open class BasicJvmScriptingHost(
|
||||
hostEnvironment: ScriptingEnvironment = defaultJvmScriptingEnvironment,
|
||||
compiler: JvmScriptCompiler = JvmScriptCompiler(hostEnvironment),
|
||||
hostConfiguration: ScriptingHostConfiguration = defaultJvmScriptingEnvironment,
|
||||
compiler: JvmScriptCompiler = JvmScriptCompiler(hostConfiguration),
|
||||
evaluator: ScriptEvaluator = BasicJvmScriptEvaluator()
|
||||
) : BasicScriptingHost(compiler, evaluator)
|
||||
|
||||
|
||||
inline fun <reified T : Any> createBasicScriptCompilationConfigurationFromAnnotatedBaseClass(
|
||||
hostEnvironment: ScriptingEnvironment = defaultJvmScriptingEnvironment,
|
||||
hostConfiguration: ScriptingHostConfiguration = defaultJvmScriptingEnvironment,
|
||||
noinline body: ScriptCompilationConfiguration.Builder.() -> Unit = {}
|
||||
): ScriptCompilationConfiguration = createScriptCompilationConfigurationFromAnnotatedBaseClass(
|
||||
KotlinType(T::class),
|
||||
hostEnvironment,
|
||||
hostConfiguration,
|
||||
ScriptCompilationConfiguration::class,
|
||||
body
|
||||
)
|
||||
|
||||
+7
-5
@@ -38,7 +38,9 @@ import java.io.File
|
||||
import java.net.URLClassLoader
|
||||
import kotlin.script.experimental.api.*
|
||||
import kotlin.script.experimental.dependencies.DependenciesResolver
|
||||
import kotlin.script.experimental.host.ScriptingHostConfiguration
|
||||
import kotlin.script.experimental.host.getMergedScriptText
|
||||
import kotlin.script.experimental.host.getScriptingClass
|
||||
import kotlin.script.experimental.jvm.JvmDependency
|
||||
import kotlin.script.experimental.jvm.impl.BridgeDependenciesResolver
|
||||
import kotlin.script.experimental.jvm.javaHome
|
||||
@@ -74,7 +76,7 @@ class KJvmCompiledScript<out ScriptBase : Any>(
|
||||
}
|
||||
}
|
||||
|
||||
class KJvmCompilerImpl(val hostEnvironment: ScriptingEnvironment) : KJvmCompilerProxy {
|
||||
class KJvmCompilerImpl(val hostConfiguration: ScriptingHostConfiguration) : KJvmCompilerProxy {
|
||||
|
||||
override fun compile(
|
||||
script: ScriptSource,
|
||||
@@ -104,13 +106,13 @@ class KJvmCompilerImpl(val hostEnvironment: ScriptingEnvironment) : KJvmCompiler
|
||||
val kotlinCompilerConfiguration = org.jetbrains.kotlin.config.CompilerConfiguration().apply {
|
||||
add(
|
||||
JVMConfigurationKeys.SCRIPT_DEFINITIONS,
|
||||
BridgeScriptDefinition(scriptCompilationConfiguration, hostEnvironment, ::updateClasspath)
|
||||
BridgeScriptDefinition(scriptCompilationConfiguration, hostConfiguration, ::updateClasspath)
|
||||
)
|
||||
put<MessageCollector>(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, messageCollector)
|
||||
put(JVMConfigurationKeys.RETAIN_OUTPUT_IN_MEMORY, true)
|
||||
|
||||
var isModularJava = false
|
||||
getFirstFromChainOrNull(ScriptCompilationConfiguration.jvm.javaHome, updatedConfiguration, hostEnvironment)?.let {
|
||||
getFirstFromChainOrNull(ScriptCompilationConfiguration.jvm.javaHome, updatedConfiguration, hostConfiguration)?.let {
|
||||
put(JVMConfigurationKeys.JDK_HOME, it)
|
||||
isModularJava = CoreJrtFileSystem.isModularJdk(it)
|
||||
}
|
||||
@@ -238,10 +240,10 @@ class ScriptDiagnosticsMessageCollector : MessageCollector {
|
||||
|
||||
internal class BridgeScriptDefinition(
|
||||
scriptCompilationConfiguration: ScriptCompilationConfiguration,
|
||||
hostEnvironment: ScriptingEnvironment,
|
||||
hostConfiguration: ScriptingHostConfiguration,
|
||||
updateClasspath: (List<File>) -> Unit
|
||||
) : KotlinScriptDefinition(
|
||||
hostEnvironment.getScriptingClass(
|
||||
hostConfiguration.getScriptingClass(
|
||||
scriptCompilationConfiguration.getOrError(ScriptCompilationConfiguration.baseClass),
|
||||
BridgeScriptDefinition::class
|
||||
)
|
||||
|
||||
+3
-3
@@ -5,14 +5,14 @@
|
||||
|
||||
package kotlin.script.experimental.jvmhost.impl
|
||||
|
||||
import kotlin.script.experimental.api.ScriptingEnvironment
|
||||
import kotlin.script.experimental.host.ScriptingHostConfiguration
|
||||
import kotlin.script.experimental.jvm.defaultJvmScriptingEnvironment
|
||||
|
||||
fun ScriptingEnvironment.withDefaults(): ScriptingEnvironment =
|
||||
fun ScriptingHostConfiguration.withDefaults(): ScriptingHostConfiguration =
|
||||
if (this == defaultJvmScriptingEnvironment || defaultJvmScriptingEnvironment.properties.all {
|
||||
this.properties.containsKey(it.key)
|
||||
}) {
|
||||
this
|
||||
} else {
|
||||
ScriptingEnvironment(defaultJvmScriptingEnvironment, this)
|
||||
ScriptingHostConfiguration(defaultJvmScriptingEnvironment, this)
|
||||
}
|
||||
|
||||
+3
-2
@@ -8,6 +8,7 @@
|
||||
package kotlin.script.experimental.jvmhost
|
||||
|
||||
import kotlin.script.experimental.api.*
|
||||
import kotlin.script.experimental.host.ScriptingHostConfiguration
|
||||
import kotlin.script.experimental.jvm.defaultJvmScriptingEnvironment
|
||||
import kotlin.script.experimental.jvmhost.impl.KJvmCompilerImpl
|
||||
import kotlin.script.experimental.jvmhost.impl.withDefaults
|
||||
@@ -29,8 +30,8 @@ interface CompiledJvmScriptsCache {
|
||||
}
|
||||
|
||||
open class JvmScriptCompiler(
|
||||
hostEnvironment: ScriptingEnvironment = defaultJvmScriptingEnvironment,
|
||||
val compilerProxy: KJvmCompilerProxy = KJvmCompilerImpl(hostEnvironment.withDefaults()),
|
||||
hostConfiguration: ScriptingHostConfiguration = defaultJvmScriptingEnvironment,
|
||||
val compilerProxy: KJvmCompilerProxy = KJvmCompilerImpl(hostConfiguration.withDefaults()),
|
||||
val cache: CompiledJvmScriptsCache = CompiledJvmScriptsCache.NoCache
|
||||
) : ScriptCompiler {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user