Files
kotlin-fork/idea/testData/script/definition/completion/implicitReceiver/template/template.kt
T
Roman Golyshev 28e2d2faf2 KT-34740 Make getImplicitReceiversWithInstanceToExpression keep script implicit receivers
- This makes completion aware of scripts implicit receivers (it matters in .gradle.kts files, for example)
- ^KT-34740 Fixed
2019-11-22 11:22:46 +03:00

41 lines
1.0 KiB
Kotlin
Vendored

package custom.scriptDefinition
import kotlin.script.experimental.annotations.KotlinScript
import kotlin.script.experimental.jvm.dependenciesFromClassContext
import kotlin.script.experimental.jvm.jvm
import kotlin.script.experimental.api.*
@KotlinScript(
displayName = "Definition for tests",
fileExtension = "kts",
compilationConfiguration = TemplateDefinition::class
)
open class Template(val args: Array<String>)
@Suppress("UNCHECKED_CAST")
object TemplateDefinition : ScriptCompilationConfiguration(
{
baseClass(Base::class)
jvm {
dependenciesFromClassContext(TemplateDefinition::class)
}
ide {
acceptedLocations(ScriptAcceptedLocation.Everywhere)
}
refineConfiguration {
beforeCompiling { (_, config, _) ->
config.with {
implicitReceivers(ImplicitBase::class)
}.asSuccess()
}
}
}
)
open class Base {
fun fooBase() {}
}
class ImplicitBase {
fun fooImplicitBase() {}
}