Create from Usage: Support adding type parameters to the referenced type

#KT-11760 Fixed
This commit is contained in:
Alexey Sedunov
2016-11-29 11:21:20 +03:00
parent c773afdbfa
commit b6d4bb4921
35 changed files with 346 additions and 127 deletions
@@ -0,0 +1,5 @@
// "Create type parameters in class 'X'" "true"
class X<T>
fun foo(x: X<<caret>String, Int, Boolean>) {}
@@ -0,0 +1,5 @@
// "Create type parameters in class 'X'" "true"
class X<T, U, V>
fun foo(x: X<<caret>String, Int, Boolean>) {}
@@ -0,0 +1,5 @@
// "Create type parameter in class 'X'" "true"
class X
fun foo(x: X<<caret>String>) {}
@@ -0,0 +1,5 @@
// "Create type parameter in class 'X'" "true"
class X<T>
fun foo(x: X<<caret>String>) {}
@@ -0,0 +1,9 @@
// "Create type parameter in function 'bar'" "true"
fun bar() {
}
fun foo() {
bar<<caret>String>()
}
@@ -0,0 +1,9 @@
// "Create type parameter in function 'bar'" "true"
fun <T> bar() {
}
fun foo() {
bar<<caret>String>()
}
@@ -0,0 +1,4 @@
// "Create type parameter in class 'X'" "false"
// ERROR: 2 type arguments expected for class X<T, U> defined in root package
class X<T, U>
fun Y(x: X<<caret>String>) {}
@@ -0,0 +1,6 @@
// "Create type parameter in class 'X'" "false"
// ERROR: No type arguments expected for class X defined in root package
class X
fun foo(x: <caret>X<String>) {}