Files
kotlin-fork/compiler/testData/diagnostics/tests/extensions/contextReceivers/fromKEEP/iterableClass.kt
T
2022-04-06 16:05:41 +00:00

19 lines
502 B
Kotlin
Vendored

// !LANGUAGE: +ContextReceivers
typealias IterableClass<C, T> = (C) -> Iterator<T>
context(IterableClass<C, T>)
fun <C, T> C.iterator(any: Any?): Iterator<T> = this@IterableClass.invoke(this)
fun <T> listOf(vararg items: T): List<T> = null!!
fun test() {
val f: IterableClass<List<Int>, Int> = {
it.listIterator()
}
with(f) {
listOf(1, 2, 3).iterator(null)
}
listOf(1, 2, 3).<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, NO_CONTEXT_RECEIVER!>iterator<!>(null)
}