Resolve standard library calls in Kotlin scripts (KT-15383)

#KT-15383 Fixed
This commit is contained in:
Nikolay Krasko
2016-12-27 16:40:29 +03:00
parent 9f11564708
commit 9f94caeb39
4 changed files with 80 additions and 4 deletions
@@ -122,9 +122,7 @@ class KotlinScriptConfigurationManager(
private fun reloadScriptDefinitions() {
makeScriptDefsFromTemplatesProviderExtensions(project, { ep, ex -> log.warn("[kts] Error loading definition from ${ep.id}", ex) }).let {
if (it.isNotEmpty()) {
scriptDefinitionProvider.setScriptDefinitions(it + StandardScriptDefinition)
}
scriptDefinitionProvider.setScriptDefinitions(it)
}
}
@@ -32,7 +32,7 @@ class KotlinScriptResolveScopeProvider : ResolveScopeProvider() {
return when {
scriptDefinition == null -> null
// This is a workaround for completion in scripts and REPL to provide module dependencies
scriptDefinition == StandardScriptDefinition || scriptDefinition.template == Any::class -> null
scriptDefinition.template == Any::class -> null
scriptDefinition is KotlinScriptDefinitionFromAnnotatedTemplate -> // TODO: should include the file itself
KotlinScriptConfigurationManager.getInstance(project).getAllScriptsClasspathScope()
else -> null