Return script instance from the evaluation in the basic jvm evaluator
This commit is contained in:
+2
-2
@@ -26,13 +26,13 @@ open class BasicJvmScriptEvaluator<ScriptBase : Any>(val environment: ScriptingE
|
|||||||
ResultWithDiagnostics.Failure(ScriptDiagnostic("expecting class in this implementation, got ${scriptObject?.javaClass}"))
|
ResultWithDiagnostics.Failure(ScriptDiagnostic("expecting class in this implementation, got ${scriptObject?.javaClass}"))
|
||||||
else {
|
else {
|
||||||
val receivers = scriptEvaluationEnvironment.getOrNull(ScriptEvaluationEnvironmentParams.implicitReceivers)
|
val receivers = scriptEvaluationEnvironment.getOrNull(ScriptEvaluationEnvironmentParams.implicitReceivers)
|
||||||
if (receivers == null) {
|
val instance = if (receivers == null) {
|
||||||
scriptObject.getConstructor().newInstance()
|
scriptObject.getConstructor().newInstance()
|
||||||
} else {
|
} else {
|
||||||
scriptObject.getConstructor(Array<Any>::class.java).newInstance(receivers.toTypedArray())
|
scriptObject.getConstructor(Array<Any>::class.java).newInstance(receivers.toTypedArray())
|
||||||
}
|
}
|
||||||
|
|
||||||
ResultWithDiagnostics.Success(EvaluationResult(null, scriptEvaluationEnvironment))
|
ResultWithDiagnostics.Success(EvaluationResult(instance, scriptEvaluationEnvironment))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user