diff --git a/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt b/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt index 97439e4147a..27eeb01f8f8 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt @@ -30,6 +30,8 @@ import org.jetbrains.kotlin.psi.KtScript import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull import java.io.File import kotlin.reflect.KClass +import kotlin.reflect.KFunction +import kotlin.reflect.KParameter import kotlin.reflect.full.memberFunctions import kotlin.reflect.full.primaryConstructor @@ -68,6 +70,14 @@ open class KotlinScriptDefinitionFromAnnotatedTemplate( } private val acceptedAnnotations: List> by lazy { + + fun sameSignature(left: KFunction<*>, right: KFunction<*>): Boolean = + left.parameters.size == right.parameters.size && + left.parameters.zip(right.parameters).all { + it.first.kind == KParameter.Kind.INSTANCE || + it.first.type == it.second.type + } + val resolveMethod = ScriptDependenciesResolver::resolve val resolverMethodAnnotations = resolver?.let { it::class }?.memberFunctions?.find { function -> diff --git a/compiler/frontend/src/org/jetbrains/kotlin/script/scriptTemplate.kt b/compiler/frontend/src/org/jetbrains/kotlin/script/scriptTemplate.kt index ad6278d9496..16fe8ff4c8d 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/script/scriptTemplate.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/script/scriptTemplate.kt @@ -20,8 +20,6 @@ import java.io.File import java.util.concurrent.Future import java.util.concurrent.TimeUnit import kotlin.reflect.KClass -import kotlin.reflect.KFunction -import kotlin.reflect.KParameter const val DEFAULT_SCRIPT_FILE_PATTERN = ".*\\.kts" @@ -80,10 +78,3 @@ class BasicScriptDependenciesResolver : ScriptDependenciesResolver @Retention(AnnotationRetention.RUNTIME) annotation class AcceptedAnnotations(vararg val supportedAnnotationClasses: KClass) -internal fun sameSignature(left: KFunction<*>, right: KFunction<*>): Boolean = - left.parameters.size == right.parameters.size && - left.parameters.zip(right.parameters).all { - it.first.kind == KParameter.Kind.INSTANCE || - it.first.type == it.second.type - } -