[scripting] Move earlierScripts to the frontend descriptor
^KT-20488 fixed
This commit is contained in:
+1
-3
@@ -47,9 +47,7 @@ class JvmReplEvaluator(
|
||||
val lastSnippetClass = history.peek()?.item?.first
|
||||
val historyBeforeSnippet = history.previousItems(compileResult.lineId).map { it.second }.toList()
|
||||
val currentConfiguration = ScriptEvaluationConfiguration(baseScriptEvaluationConfiguration) {
|
||||
if (historyBeforeSnippet.isNotEmpty()) {
|
||||
previousSnippets.put(historyBeforeSnippet)
|
||||
}
|
||||
previousSnippets.put(historyBeforeSnippet)
|
||||
if (lastSnippetClass != null) {
|
||||
jvm {
|
||||
baseClassLoader(lastSnippetClass.java.classLoader)
|
||||
|
||||
@@ -37,9 +37,7 @@ class BasicJvmReplEvaluator(val scriptEvaluator: ScriptEvaluator = BasicJvmScrip
|
||||
val lastSnippetClass = history.lastItem()?.first
|
||||
val historyBeforeSnippet = history.items.map { it.second }
|
||||
val currentConfiguration = ScriptEvaluationConfiguration(configuration) {
|
||||
if (historyBeforeSnippet.isNotEmpty()) {
|
||||
previousSnippets.put(historyBeforeSnippet)
|
||||
}
|
||||
previousSnippets.put(historyBeforeSnippet)
|
||||
if (lastSnippetClass != null) {
|
||||
jvm {
|
||||
lastSnippetClassLoader(lastSnippetClass.java.classLoader)
|
||||
|
||||
+7
-5
@@ -19,12 +19,16 @@ open class BasicJvmScriptEvaluator : ScriptEvaluator {
|
||||
|
||||
// configuration shared between all module scripts
|
||||
val sharedConfiguration = scriptEvaluationConfiguration.getOrPrepareShared(scriptClass.java.classLoader)
|
||||
|
||||
val configurationForOtherScripts by lazy {
|
||||
sharedConfiguration.with {
|
||||
reset(ScriptEvaluationConfiguration.previousSnippets)
|
||||
}
|
||||
}
|
||||
val sharedScripts = sharedConfiguration[ScriptEvaluationConfiguration.jvm.scriptsInstancesSharingMap]
|
||||
|
||||
sharedScripts?.get(scriptClass)?.asSuccess()
|
||||
?: compiledScript.otherScripts.mapSuccess {
|
||||
invoke(it, sharedConfiguration)
|
||||
invoke(it, configurationForOtherScripts)
|
||||
}.onSuccess { importedScriptsEvalResults ->
|
||||
|
||||
val refinedEvalConfiguration =
|
||||
@@ -70,9 +74,7 @@ open class BasicJvmScriptEvaluator : ScriptEvaluator {
|
||||
val args = ArrayList<Any?>()
|
||||
|
||||
refinedEvalConfiguration[ScriptEvaluationConfiguration.previousSnippets]?.let {
|
||||
if (it.isNotEmpty()) {
|
||||
args.add(it.toTypedArray())
|
||||
}
|
||||
args.add(it.toTypedArray())
|
||||
}
|
||||
|
||||
refinedEvalConfiguration[ScriptEvaluationConfiguration.constructorArgs]?.let {
|
||||
|
||||
Reference in New Issue
Block a user