Sorting default jvm props and basic implementations

This commit is contained in:
Ilya Chernikov
2018-07-23 13:42:39 +02:00
parent fe2a11142e
commit 70ec004aaa
19 changed files with 110 additions and 133 deletions
@@ -18,7 +18,7 @@ import kotlin.script.experimental.annotations.KotlinScriptFileExtension
import kotlin.script.experimental.api.*
import kotlin.script.experimental.definitions.createScriptDefinitionFromAnnotatedBaseClass
import kotlin.script.experimental.jvm.JvmDependency
import kotlin.script.experimental.jvm.JvmGetScriptingClass
import kotlin.script.experimental.jvm.defaultJvmScriptingEnvironment
class LazyScriptDefinitionFromDiscoveredClass internal constructor(
private val annotationsFromAsm: ArrayList<BinAnnData>,
@@ -36,8 +36,8 @@ class LazyScriptDefinitionFromDiscoveredClass internal constructor(
override val hostEnvironment: ScriptingEnvironment by lazy(LazyThreadSafetyMode.PUBLICATION) {
ScriptingEnvironment(
ScriptingEnvironmentProperties.configurationDependencies to listOf(JvmDependency(classpath)),
ScriptingEnvironmentProperties.getScriptingClass to JvmGetScriptingClass()
defaultJvmScriptingEnvironment,
ScriptingEnvironmentProperties.configurationDependencies to listOf(JvmDependency(classpath))
)
}
@@ -18,10 +18,8 @@ import java.util.jar.JarFile
import kotlin.coroutines.experimental.buildSequence
import kotlin.script.experimental.annotations.KotlinScript
import kotlin.script.experimental.api.KotlinType
import kotlin.script.experimental.api.ScriptingEnvironment
import kotlin.script.experimental.api.ScriptingEnvironmentProperties
import kotlin.script.experimental.definitions.createScriptDefinitionFromAnnotatedBaseClass
import kotlin.script.experimental.jvm.JvmGetScriptingClass
import kotlin.script.experimental.jvm.defaultJvmScriptingEnvironment
import kotlin.script.templates.ScriptTemplateDefinition
internal const val SCRIPT_DEFINITION_MARKERS_PATH = "META-INF/kotlin/script/templates/"
@@ -274,9 +272,7 @@ private fun loadScriptDefinition(
val cls = classLoader.loadClass(template)
val def =
if (cls.annotations.firstIsInstanceOrNull<KotlinScript>() != null) {
val environment = ScriptingEnvironment(
ScriptingEnvironmentProperties.getScriptingClass to JvmGetScriptingClass()
)
val environment = defaultJvmScriptingEnvironment
KotlinScriptDefinitionAdapterFromNewAPI(
createScriptDefinitionFromAnnotatedBaseClass(
KotlinType(cls.kotlin),