Pseudocode: Bind nondeterministic jump caused by local declaration to declaration iself instead of its parent element
#KT-6261 Fixed #KT-6416 Fixed
This commit is contained in:
+6
@@ -0,0 +1,6 @@
|
||||
fun test1(): Int {
|
||||
<selection>val foo = 1
|
||||
fun bar() = 2
|
||||
|
||||
return 3</selection>
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
fun test1(): Int {
|
||||
return i()
|
||||
}
|
||||
|
||||
private fun i(): Int {
|
||||
val foo = 1
|
||||
fun bar() = 2
|
||||
|
||||
return 3
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun test(): Int {
|
||||
<selection>val j = 1
|
||||
fun local() = 1
|
||||
return local()</selection>
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
fun test(): Int {
|
||||
return i()
|
||||
}
|
||||
|
||||
private fun i(): Int {
|
||||
val j = 1
|
||||
fun local() = 1
|
||||
return local()
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
fun test(): Int {
|
||||
<selection>val foo = 1
|
||||
fun bar() = 2
|
||||
|
||||
return when (foo) {
|
||||
1 -> 1
|
||||
else -> 2
|
||||
}</selection>
|
||||
}
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
fun test(): Int {
|
||||
return i()
|
||||
}
|
||||
|
||||
private fun i(): Int {
|
||||
val foo = 1
|
||||
fun bar() = 2
|
||||
|
||||
return when (foo) {
|
||||
1 -> 1
|
||||
else -> 2
|
||||
}
|
||||
}
|
||||
+18
@@ -414,6 +414,24 @@ public class JetExtractionTestGenerated extends AbstractJetExtractionTest {
|
||||
doExtractFunctionTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("localFunctionInTheMiddleSimpleControlFlow.kt")
|
||||
public void testLocalFunctionInTheMiddleSimpleControlFlow() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/extractFunction/basic/localFunctionInTheMiddleSimpleControlFlow.kt");
|
||||
doExtractFunctionTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("localFunctionInTheMiddleUnusedVar.kt")
|
||||
public void testLocalFunctionInTheMiddleUnusedVar() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/extractFunction/basic/localFunctionInTheMiddleUnusedVar.kt");
|
||||
doExtractFunctionTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("localFunctionInTheMiddleUsedVar.kt")
|
||||
public void testLocalFunctionInTheMiddleUsedVar() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/extractFunction/basic/localFunctionInTheMiddleUsedVar.kt");
|
||||
doExtractFunctionTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("localFunctionRef.kt")
|
||||
public void testLocalFunctionRef() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/extractFunction/basic/localFunctionRef.kt");
|
||||
|
||||
Reference in New Issue
Block a user