Create from Usage: Allow type parameters in the receiver position
#KT-7497 Fixed
This commit is contained in:
+4
@@ -0,0 +1,4 @@
|
||||
// "Create extension function 'bar'" "true"
|
||||
fun <T> foo(t: T) {
|
||||
t.<caret>bar()
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// "Create extension function 'bar'" "true"
|
||||
fun <T> foo(t: T) {
|
||||
t.bar()
|
||||
}
|
||||
|
||||
fun <T> T.bar() {
|
||||
throw UnsupportedOperationException("not implemented") //To change body of created functions use File | Settings | File Templates.
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
// "Create member function 'bar'" "false"
|
||||
// ACTION: Create extension function 'bar'
|
||||
// ACTION: Rename reference
|
||||
// ERROR: Unresolved reference: bar
|
||||
fun <T> foo(t: T) {
|
||||
t.<caret>bar()
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
// "Create extension property 'bar'" "true"
|
||||
// ERROR: Property must be initialized
|
||||
fun consume(n: Int) {}
|
||||
|
||||
fun <T> foo(t: T) {
|
||||
consume(t.<caret>bar)
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
// "Create extension property 'bar'" "true"
|
||||
// ERROR: Property must be initialized
|
||||
fun consume(n: Int) {}
|
||||
|
||||
val <T> T.bar: Int
|
||||
|
||||
fun <T> foo(t: T) {
|
||||
consume(t.bar)
|
||||
}
|
||||
Vendored
+10
@@ -0,0 +1,10 @@
|
||||
// "Create member property 'bar'" "false"
|
||||
// ACTION: Create extension property 'bar'
|
||||
// ACTION: Rename reference
|
||||
// ACTION: Convert to expression body
|
||||
// ERROR: Unresolved reference: bar
|
||||
fun consume(n: Int) {}
|
||||
|
||||
fun <T> foo(t: T) {
|
||||
consume(t.<caret>bar)
|
||||
}
|
||||
Reference in New Issue
Block a user