Implement an intention action to move a companion object member to top level

#KT-18828 Fixed

(cherry picked from commit 11f8f8b)
This commit is contained in:
shiraji
2017-10-21 04:56:07 +03:00
committed by Alexey Sedunov
parent 7044e46756
commit 31a1fb916a
19 changed files with 221 additions and 22 deletions
@@ -0,0 +1 @@
org.jetbrains.kotlin.idea.intentions.MoveMemberToTopLevelIntention
@@ -0,0 +1,5 @@
// IS_APPLICABLE: false
abstract class A {
abstract fun <caret> foo()
}
@@ -0,0 +1,5 @@
// IS_APPLICABLE: false
abstract class A {
abstract val <caret> foo: Int
}
@@ -0,0 +1,5 @@
// WITH_RUNTIME
object A {
private fun <caret>foo() = 1
}
@@ -0,0 +1,3 @@
// WITH_RUNTIME
private fun foo() = 1
@@ -0,0 +1,7 @@
// WITH_RUNTIME
class A {
companion object {
private fun <caret>foo() = 1
}
}
@@ -0,0 +1,6 @@
// WITH_RUNTIME
class A {
}
private fun foo() = 1
@@ -0,0 +1,5 @@
// WITH_RUNTIME
object A {
val <caret>foo: Int = 1
}
@@ -0,0 +1,3 @@
// WITH_RUNTIME
val foo: Int = 1
@@ -0,0 +1,7 @@
// WITH_RUNTIME
class A {
companion object {
val <caret>foo: Int = 1
}
}
@@ -0,0 +1,6 @@
// WITH_RUNTIME
class A {
}
val foo: Int = 1
@@ -0,0 +1,6 @@
// SHOULD_FAIL_WITH: Package 'default' already contains function f1(Int)
object Test {
fun <caret>f1(n: Int) {}
}
fun f1(n: Int) {}
@@ -0,0 +1,8 @@
// SHOULD_FAIL_WITH: Package 'foo.bar' already contains function f1(Int)
package foo.bar
object Test {
fun <caret>f1(n: Int) {}
}
fun f1(n: Int) {}
@@ -0,0 +1,6 @@
// SHOULD_FAIL_WITH: Package 'default' already contains property f1
object Test {
val <caret>f1 = 1
}
val f1 = 1