KT-9128 ReplaceWith incorrectly converts javaClass<X>() to X::class.java for type with arguments

#KT-9128 Fixed
This commit is contained in:
Valentin Kipyatkov
2015-09-14 18:34:41 +03:00
parent f2b67966ce
commit 8ba7f2c238
4 changed files with 42 additions and 2 deletions
@@ -0,0 +1,10 @@
// "Replace usages of 'myJavaClass(): Class<T>' in whole project" "true"
@Deprecated("", ReplaceWith("T::class.java"))
inline fun <reified T: Any> myJavaClass(): Class<T> = T::class.java
fun foo() {
val v1 = <caret>myJavaClass<List<*>>()
val v2 = myJavaClass<List<String>>()
val v3 = myJavaClass<Array<String>>()
}
@@ -0,0 +1,10 @@
// "Replace usages of 'myJavaClass(): Class<T>' in whole project" "true"
@Deprecated("", ReplaceWith("T::class.java"))
inline fun <reified T: Any> myJavaClass(): Class<T> = T::class.java
fun foo() {
val v1 = List::class.java
val v2 = List::class.java
val v3 = Array<String>::class.java
}