Remove evaluator from script definition, simplify interface

This commit is contained in:
Ilya Chernikov
2018-07-15 20:54:20 +02:00
parent e61ba1fd70
commit 91e6c0b77c
13 changed files with 31 additions and 62 deletions
@@ -11,10 +11,10 @@ import kotlin.script.experimental.api.ScriptEvaluator
import kotlin.script.experimental.host.BasicScriptingHost
import kotlin.script.experimental.util.typedKey
open class JvmBasicScriptingHost<ScriptBase : Any>(
open class JvmBasicScriptingHost(
compiler: JvmScriptCompiler,
evaluator: ScriptEvaluator<ScriptBase>
) : BasicScriptingHost<ScriptBase>(compiler, evaluator)
evaluator: ScriptEvaluator
) : BasicScriptingHost(compiler, evaluator)
object JvmScriptEvaluationEnvironmentProperties {
val baseClassLoader by typedKey<ClassLoader?>()
@@ -7,10 +7,10 @@ package kotlin.script.experimental.jvm.runners
import kotlin.script.experimental.api.*
open class BasicJvmScriptEvaluator<ScriptBase : Any>(val environment: ScriptingEnvironment) : ScriptEvaluator<ScriptBase> {
open class BasicJvmScriptEvaluator() : ScriptEvaluator {
override suspend fun eval(
compiledScript: CompiledScript<ScriptBase>,
compiledScript: CompiledScript<*>,
scriptEvaluationEnvironment: ScriptEvaluationEnvironment
): ResultWithDiagnostics<EvaluationResult> =
try {