Extract Function: In case of top-level and member declarations place extracted function after the original container

This commit is contained in:
Alexey Sedunov
2014-05-30 14:37:41 +04:00
parent ae7ad6d61c
commit 3c5c0248a7
138 changed files with 482 additions and 440 deletions
@@ -2,7 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -4,7 +4,7 @@ public open class Z {
}
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -4,7 +4,7 @@ public open class Z {
}
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -2,7 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -2,7 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -2,11 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + a1.z + b1.z
}
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -18,3 +14,7 @@ public class A(): Z() {
}
}
}
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + a1.z + b1.z
}
@@ -1,6 +1,6 @@
class Z(val a: Int)
// NEXT_SIBLING:
// SIBLING:
fun Z.foo(): Int {
return <selection>this.a</selection> + 1
}
@@ -1,10 +1,10 @@
class Z(val a: Int)
// NEXT_SIBLING:
fun Z.i(): Int {
return a
}
// SIBLING:
fun Z.foo(): Int {
return i() + 1
}
fun Z.i(): Int {
return a
}
@@ -2,7 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -2,11 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + b1.z
}
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -18,3 +14,7 @@ public class A(): Z() {
}
}
}
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + b1.z
}
@@ -2,7 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -2,11 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + a1.z + b1.z
}
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -18,3 +14,7 @@ public class A(): Z() {
}
}
}
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + a1.z + b1.z
}
@@ -1,6 +1,6 @@
class Z(val a: Int)
// NEXT_SIBLING:
// SIBLING:
fun Z.foo(): Int {
return <selection>this.a + a</selection> + 1
}
@@ -1,10 +1,10 @@
class Z(val a: Int)
// NEXT_SIBLING:
fun Z.i(): Int {
return a + a
}
// SIBLING:
fun Z.foo(): Int {
return i() + 1
}
fun Z.i(): Int {
return a + a
}
@@ -1,6 +1,6 @@
class Z(val a: Int)
// NEXT_SIBLING:
// SIBLING:
fun Z.foo(): Int {
return <selection>a</selection> + 1
}
@@ -1,10 +1,10 @@
class Z(val a: Int)
// NEXT_SIBLING:
fun Z.i(): Int {
return a
}
// SIBLING:
fun Z.foo(): Int {
return i() + 1
}
fun Z.i(): Int {
return a
}
@@ -2,7 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -2,11 +2,7 @@ public open class Z {
val z: Int = 0
}
// NEXT_SIBLING:
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + b1.z
}
// SIBLING:
public class A(): Z() {
var a: Int = 1
@@ -18,3 +14,7 @@ public class A(): Z() {
}
}
}
fun i(a1: A, b1: A.B): Int {
return a1.a + b1.b + b1.z
}
@@ -1,4 +1,4 @@
// NEXT_SIBLING:
// SIBLING:
class MyClass {
fun test(): Int {
<selection>coFun()
@@ -1,9 +1,4 @@
// NEXT_SIBLING:
fun i(): Int {
MyClass.coFun()
return MyClass.coProp + 10
}
// SIBLING:
class MyClass {
fun test(): Int {
return i()
@@ -17,3 +12,8 @@ class MyClass {
}
}
}
fun i(): Int {
MyClass.coFun()
return MyClass.coProp + 10
}
@@ -1,4 +1,4 @@
// NEXT_SIBLING:
// SIBLING:
class A {
class B {
fun test(): Int {
@@ -1,9 +1,4 @@
// NEXT_SIBLING:
fun i(): Int {
A.B.coFun()
return A.B.coProp + 10
}
// SIBLING:
class A {
class B {
fun test(): Int {
@@ -20,4 +15,9 @@ class A {
}
}
fun i(): Int {
A.B.coFun()
return A.B.coProp + 10
}
@@ -1,4 +1,4 @@
// NEXT_SIBLING:
// SIBLING:
fun foo(a: Int, b: Int, c: Int): Int {
return <selection>(a + b*a - c) + b*c</selection>
}
@@ -1,8 +1,8 @@
// NEXT_SIBLING:
fun i(a: Int, b: Int, c: Int): Int {
return (a + b * a - c) + b * c
}
// SIBLING:
fun foo(a: Int, b: Int, c: Int): Int {
return i(a, b, c)
}
fun i(a: Int, b: Int, c: Int): Int {
return (a + b * a - c) + b * c
}
@@ -1,4 +1,4 @@
// NEXT_SIBLING:
// SIBLING:
public class A() {
fun bar(a: Int, b: Int): Int {
return a + b
@@ -1,14 +1,14 @@
// NEXT_SIBLING:
fun i(a: A, t: Int, u: Int, x: Int): Int {
return a.bar(t - x, u + x)
}
// SIBLING:
public class A() {
fun bar(a: Int, b: Int): Int {
return a + b
}
}
fun i(a: A, t: Int, u: Int, x: Int): Int {
return a.bar(t - x, u + x)
}
fun foo(a: A, x: Int): Int {
val t = 10
val u = 20
@@ -3,7 +3,7 @@ trait Callable<T> {
}
fun foo(a: Int): Int {
// NEXT_SIBLING:
// SIBLING:
val o = object: Callable<Int> {
val b: Int = 1
@@ -1,4 +1,4 @@
// NEXT_SIBLING:
// SIBLING:
fun foo(a: Int): Int {
class T(val b: Int)