Files
Anna Kozlova ce97fcef18 [kotlin] k2: implement Deprecated replacement fix
- works for callables only
- replace in the whole project is not yet implemented
- disabled tests:
 -- tests on classes/objects placed in wrong directories
 -- tests on replace in the whole project
 -- optimized imports
 -- reported problems with inline refactoring
 -- 3 tests with broken type arguments while inline itself works ok

KTIJ-29498

GitOrigin-RevId: 046264742291bd6b1525d8df16535a14351879ee
2024-06-14 21:43:23 +00:00

19 lines
518 B
Kotlin

// "Replace with 's.newFun(this)'" "true"
// WITH_STDLIB
class X {
@Deprecated("", ReplaceWith("s.newFun(this)"))
fun oldFun(s: String): String = s.newFun(this)
}
fun String.newFun(x: X): String = this
fun foo(x: X?, p: Boolean) {
val v = if (p)
x?.<caret>oldFun("a")
else
null
}
// FUS_QUICKFIX_NAME: org.jetbrains.kotlin.idea.quickfix.replaceWith.DeprecatedSymbolUsageFix
// FUS_K2_QUICKFIX_NAME: org.jetbrains.kotlin.idea.k2.codeinsight.fixes.replaceWith.DeprecatedSymbolUsageFix