Implement Invocable on base evaluator and locally-evaluating JSR223 sample engines

fixes #KT-14707
This commit is contained in:
Ilya Chernikov
2016-12-01 12:30:30 +01:00
parent fbd4c6eb61
commit c82e91eafe
9 changed files with 166 additions and 46 deletions
@@ -181,10 +181,12 @@ open class GenericRepl(
baseClassloader: ClassLoader?,
scriptArgs: Array<Any?>? = null,
scriptArgsTypes: Array<Class<*>>? = null
) : ReplEvaluator, GenericReplCompiler(disposable, scriptDefinition, compilerConfiguration, messageCollector) {
) : ReplEvaluator, ReplScriptInvokerProxy, GenericReplCompiler(disposable, scriptDefinition, compilerConfiguration, messageCollector) {
private val compiledEvaluator = GenericReplCompiledEvaluator(compilerConfiguration.jvmClasspathRoots, baseClassloader, scriptArgs, scriptArgsTypes)
override val scriptInvoker: ReplScriptInvoker get() = compiledEvaluator
@Synchronized
override fun eval(codeLine: ReplCodeLine, history: List<ReplCodeLine>): ReplEvalResult =
compileAndEval(this, compiledEvaluator, codeLine, history)