diff --git a/core/script.runtime/src/kotlin/script/dependencies/dependencies.kt b/core/script.runtime/src/kotlin/script/dependencies/dependencies.kt deleted file mode 100644 index 7e60c35c3c0..00000000000 --- a/core/script.runtime/src/kotlin/script/dependencies/dependencies.kt +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2010-2017 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -@file:Suppress("unused") - -package kotlin.script.dependencies - -import java.io.File - -data class ScriptDependencies( - val javaHome: File? = null, - val classpath: List = emptyList(), - val imports: List = emptyList(), - val sources: List = emptyList(), - val scripts: List = emptyList() -) { - companion object { - val Empty = ScriptDependencies() - } -} \ No newline at end of file diff --git a/core/script.runtime/src/kotlin/script/dependencies/experimental/AsyncDependenciesResolver.kt b/core/script.runtime/src/kotlin/script/dependencies/experimental/AsyncDependenciesResolver.kt deleted file mode 100644 index 304b7cd8328..00000000000 --- a/core/script.runtime/src/kotlin/script/dependencies/experimental/AsyncDependenciesResolver.kt +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2010-2017 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -@file:Suppress("unused") - -package kotlin.script.dependencies.experimental - -import kotlin.script.dependencies.DependenciesResolver -import kotlin.script.dependencies.DependenciesResolver.ResolveResult -import kotlin.script.dependencies.Environment -import kotlin.script.dependencies.ScriptContents - -interface AsyncDependenciesResolver : DependenciesResolver { - suspend fun resolveAsync( - scriptContents: ScriptContents, environment: Environment - ): ResolveResult - - /* 'resolve' implementation is supposed to invoke resolveAsync in a blocking manner - * To avoid dependency on kotlinx-coroutines-core we leave this method unimplemented - * and provide 'resolve' implementation when loading resolver. - */ - override fun resolve(scriptContents: ScriptContents, environment: Environment): ResolveResult - = /*runBlocking { resolveAsync(scriptContents, environment) } */ throw NotImplementedError() -} diff --git a/core/script.runtime/src/kotlin/script/dependencies/resolvers.kt b/core/script.runtime/src/kotlin/script/dependencies/resolvers.kt deleted file mode 100644 index 95c1366d2b8..00000000000 --- a/core/script.runtime/src/kotlin/script/dependencies/resolvers.kt +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright 2010-2017 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -@file:Suppress("unused") - -package kotlin.script.dependencies - -import java.io.File -import kotlin.script.dependencies.DependenciesResolver.ResolveResult - -interface DependenciesResolver : ScriptDependenciesResolver { - fun resolve(scriptContents: ScriptContents, environment: Environment): ResolveResult - - object NoDependencies : DependenciesResolver { - override fun resolve(scriptContents: ScriptContents, environment: Environment) = ScriptDependencies.Empty.asSuccess() - } - - sealed class ResolveResult { - abstract val dependencies: ScriptDependencies? - abstract val reports: List - - data class Success( - override val dependencies: ScriptDependencies, - override val reports: List = listOf() - ) : ResolveResult() - - data class Failure(override val reports: List) : ResolveResult() { - constructor(vararg reports: ScriptReport) : this(reports.asList()) - - override val dependencies: ScriptDependencies? get() = null - } - } -} - -interface ScriptContents { - val file: File? - val annotations: Iterable - val text: CharSequence? - - data class Position(val line: Int, val col: Int) -} - -data class ScriptReport(val message: String, val severity: Severity = Severity.ERROR, val position: Position? = null) { - data class Position(val startLine: Int, val startColumn: Int, val endLine: Int? = null, val endColumn: Int? = null) - enum class Severity { ERROR, WARNING, INFO, DEBUG } -} - -fun ScriptDependencies.asSuccess(): ResolveResult.Success = ResolveResult.Success(this) \ No newline at end of file diff --git a/core/script.runtime/src/kotlin/script/dependencies/resolvers_deprecated.kt b/core/script.runtime/src/kotlin/script/dependencies/resolvers_deprecated.kt index 48de540c9ea..7cdca90c6f4 100644 --- a/core/script.runtime/src/kotlin/script/dependencies/resolvers_deprecated.kt +++ b/core/script.runtime/src/kotlin/script/dependencies/resolvers_deprecated.kt @@ -18,6 +18,7 @@ package kotlin.script.dependencies +import java.io.File import java.util.concurrent.Future import java.util.concurrent.TimeUnit @@ -45,3 +46,11 @@ class PseudoFuture(private val value: T): Future { override fun isDone(): Boolean = true override fun isCancelled(): Boolean = false } + +interface ScriptContents { + val file: File? + val annotations: Iterable + val text: CharSequence? + + data class Position(val line: Int, val col: Int) +} diff --git a/core/script.runtime/src/kotlin/script/templates/annotations.kt b/core/script.runtime/src/kotlin/script/templates/annotations.kt index f0b83d7c9fe..2ce6ff581aa 100644 --- a/core/script.runtime/src/kotlin/script/templates/annotations.kt +++ b/core/script.runtime/src/kotlin/script/templates/annotations.kt @@ -19,8 +19,8 @@ package kotlin.script.templates import kotlin.reflect.KClass -import kotlin.script.dependencies.DependenciesResolver.NoDependencies import kotlin.script.dependencies.ScriptDependenciesResolver +import kotlin.script.experimental.dependencies.DependenciesResolver.NoDependencies const val DEFAULT_SCRIPT_FILE_PATTERN = ".*\\.kts"