Clean up properties collection

This commit is contained in:
Ilya Chernikov
2018-08-21 15:26:39 +03:00
parent c2e6c0ed49
commit 01eca8bac8
15 changed files with 66 additions and 128 deletions
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
import java.io.File
import kotlin.script.experimental.annotations.KotlinScript
import kotlin.script.experimental.annotations.KotlinScriptFileExtension
import kotlin.script.experimental.api.*
import kotlin.script.experimental.host.ScriptingHostConfiguration
import kotlin.script.experimental.host.configurationDependencies
@@ -37,9 +36,8 @@ class LazyScriptDefinitionFromDiscoveredClass internal constructor(
) : this(loadAnnotationsFromClass(classBytes), className, classpath, messageCollector)
override val hostConfiguration: ScriptingHostConfiguration by lazy(LazyThreadSafetyMode.PUBLICATION) {
ScriptingHostConfiguration {
include(defaultJvmScriptingEnvironment)
configurationDependencies(JvmDependency(classpath))
ScriptingHostConfiguration(defaultJvmScriptingEnvironment) {
configurationDependencies.append(JvmDependency(classpath))
}
}
@@ -67,10 +65,8 @@ class LazyScriptDefinitionFromDiscoveredClass internal constructor(
}
override val scriptFileExtensionWithDot: String by lazy(LazyThreadSafetyMode.PUBLICATION) {
val extFromAnn = (
annotationsFromAsm.find { it.name == KotlinScriptFileExtension::class.simpleName!! }?.args
?: annotationsFromAsm.find { it.name == KotlinScript::class.simpleName }?.args
)?.find { it.name == "extension" }?.value
val extFromAnn = annotationsFromAsm.find { it.name == KotlinScript::class.simpleName }?.args
?.find { it.name == "extension" }?.value
val ext = extFromAnn
?: scriptCompilationConfiguration.let {
it[ScriptCompilationConfiguration.fileExtension] ?: "kts"
@@ -3,10 +3,10 @@ import kotlin.script.experimental.annotations.*
import kotlin.script.experimental.api.*
import kotlin.script.experimental.util.*
object TestScriptWithReceiversDefinition : ScriptDefinition(
object TestScriptWithReceiversDefinition : ScriptCompilationConfiguration(
{
implicitReceivers<String>()
implicitReceivers(String::class)
})
@KotlinScript(extension = "1.kts", definition = TestScriptWithReceiversDefinition::class)
@KotlinScript(extension = "1.kts", compilationConfiguration = TestScriptWithReceiversDefinition::class)
abstract class TestScriptWithReceivers
@@ -3,11 +3,11 @@ import kotlin.script.experimental.annotations.*
import kotlin.script.experimental.api.*
import kotlin.script.experimental.util.*
object TestScriptWithSimpleEnvVarsDefinition : ScriptDefinition(
object TestScriptWithSimpleEnvVarsDefinition : ScriptCompilationConfiguration(
{
providedProperties("stringVar1" to String::class)
})
@KotlinScript(extension = "2.kts", definition = TestScriptWithSimpleEnvVarsDefinition::class)
@KotlinScript(extension = "2.kts", compilationConfiguration = TestScriptWithSimpleEnvVarsDefinition::class)
abstract class TestScriptWithSimpleEnvVars