Auto-imports for index functions, += like operators, invoke, delegates and components

#KT-9482 Fixed
 #KT-9397 Fixed
 #KT-8060 Fixed
This commit is contained in:
Nikolay Krasko
2015-10-13 17:36:37 +03:00
committed by Nikolay Krasko
parent 0f85d770dd
commit 2f26480e6b
20 changed files with 819 additions and 8 deletions
@@ -0,0 +1,41 @@
// FILE: first.before.kt
// "Import" "true"
// ERROR: Missing 'setValue(testing.BigTest, kotlin.PropertyMetadata, kotlin.Int)' method on delegate of type 'some.DelegateImpl<kotlin.Int>'
package testing
import some.DelegateImpl
import some.getValue
class BigTest {
var a by <caret>DelegateImpl<Int>()
}
// FILE: second.kt
package some
class DelegateImpl<T> {
val value: T = null!!
}
public fun <T> DelegateImpl<T>.getValue(thisRef: Any?, property: PropertyMetadata): T = value
public fun <T> DelegateImpl<T>.setValue(thisRef: Any, propertyMetadata: PropertyMetadata, t: T) {}
// FILE: first.after.kt
// "Import" "true"
// ERROR: Missing 'setValue(testing.BigTest, kotlin.PropertyMetadata, kotlin.Int)' method on delegate of type 'some.DelegateImpl<kotlin.Int>'
package testing
import some.DelegateImpl
import some.getValue
import some.setValue
class BigTest {
var a by <caret>DelegateImpl<Int>()
}