Inlined JetPsiFactory.createReturn
This commit is contained in:
@@ -342,10 +342,6 @@ public class JetPsiFactory(private val project: Project) {
|
|||||||
return JetBlockCodeFragment(project, "fragment.kt", text, null, context)
|
return JetBlockCodeFragment(project, "fragment.kt", text, null, context)
|
||||||
}
|
}
|
||||||
|
|
||||||
public fun createReturn(expression: JetExpression): JetReturnExpression {
|
|
||||||
return createExpressionByPattern("return $0", expression) as JetReturnExpression
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun createIf(condition: JetExpression, thenExpr: JetExpression, elseExpr: JetExpression?): JetIfExpression {
|
public fun createIf(condition: JetExpression, thenExpr: JetExpression, elseExpr: JetExpression?): JetIfExpression {
|
||||||
return (if (elseExpr != null)
|
return (if (elseExpr != null)
|
||||||
createExpressionByPattern("if ($0) $1 else $2", condition, thenExpr, elseExpr) as JetIfExpression
|
createExpressionByPattern("if ($0) $1 else $2", condition, thenExpr, elseExpr) as JetIfExpression
|
||||||
|
|||||||
+3
-3
@@ -153,8 +153,8 @@ public class BranchedUnfoldingUtils {
|
|||||||
assertNotNull(elseExpr);
|
assertNotNull(elseExpr);
|
||||||
|
|
||||||
JetPsiFactory psiFactory = JetPsiFactory(returnExpression);
|
JetPsiFactory psiFactory = JetPsiFactory(returnExpression);
|
||||||
thenExpr.replace(psiFactory.createReturn(thenExpr));
|
thenExpr.replace(createExpressionByPattern(psiFactory, "return $0", thenExpr));
|
||||||
elseExpr.replace(psiFactory.createReturn(elseExpr));
|
elseExpr.replace(createExpressionByPattern(psiFactory, "return $0", elseExpr));
|
||||||
|
|
||||||
returnExpression.replace(newIfExpression);
|
returnExpression.replace(newIfExpression);
|
||||||
}
|
}
|
||||||
@@ -172,7 +172,7 @@ public class BranchedUnfoldingUtils {
|
|||||||
|
|
||||||
assertNotNull(currExpr);
|
assertNotNull(currExpr);
|
||||||
|
|
||||||
currExpr.replace(JetPsiFactory(returnExpression).createReturn(currExpr));
|
currExpr.replace(createExpressionByPattern(JetPsiFactory(returnExpression), "return $0", currExpr));
|
||||||
}
|
}
|
||||||
|
|
||||||
returnExpression.replace(newWhenExpression);
|
returnExpression.replace(newWhenExpression);
|
||||||
|
|||||||
+1
-1
@@ -45,7 +45,7 @@ public class FoldIfToReturnAsymmetricallyIntention : JetSelfTargetingOffsetIndep
|
|||||||
thenReturn.replace(thenReturn.getReturnedExpression()!!)
|
thenReturn.replace(thenReturn.getReturnedExpression()!!)
|
||||||
elseReturn.replace(elseReturn.getReturnedExpression()!!)
|
elseReturn.replace(elseReturn.getReturnedExpression()!!)
|
||||||
|
|
||||||
element.replace(psiFactory.createReturn(newIfExpression))
|
element.replace(psiFactory.createExpressionByPattern("return $0", newIfExpression))
|
||||||
elseBranch.delete()
|
elseBranch.delete()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+1
-1
@@ -36,6 +36,6 @@ public class FoldIfToReturnIntention : JetSelfTargetingOffsetIndependentIntentio
|
|||||||
thenReturn.replace(thenReturn.getReturnedExpression()!!)
|
thenReturn.replace(thenReturn.getReturnedExpression()!!)
|
||||||
elseReturn.replace(elseReturn.getReturnedExpression()!!)
|
elseReturn.replace(elseReturn.getReturnedExpression()!!)
|
||||||
|
|
||||||
element.replace(JetPsiFactory(element).createReturn(element))
|
element.replace(JetPsiFactory(element).createExpressionByPattern("return $0", element))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+2
-4
@@ -19,9 +19,7 @@ package org.jetbrains.kotlin.idea.intentions.branchedTransformations.intentions
|
|||||||
import com.intellij.openapi.editor.Editor
|
import com.intellij.openapi.editor.Editor
|
||||||
import org.jetbrains.kotlin.idea.intentions.JetSelfTargetingOffsetIndependentIntention
|
import org.jetbrains.kotlin.idea.intentions.JetSelfTargetingOffsetIndependentIntention
|
||||||
import org.jetbrains.kotlin.idea.intentions.branchedTransformations.BranchedFoldingUtils
|
import org.jetbrains.kotlin.idea.intentions.branchedTransformations.BranchedFoldingUtils
|
||||||
import org.jetbrains.kotlin.psi
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.JetPsiUtil
|
|
||||||
import org.jetbrains.kotlin.psi.JetWhenExpression
|
|
||||||
|
|
||||||
public class FoldWhenToReturnIntention : JetSelfTargetingOffsetIndependentIntention<JetWhenExpression>(javaClass(), "Replace 'when' expression with return") {
|
public class FoldWhenToReturnIntention : JetSelfTargetingOffsetIndependentIntention<JetWhenExpression>(javaClass(), "Replace 'when' expression with return") {
|
||||||
override fun isApplicableTo(element: JetWhenExpression): Boolean {
|
override fun isApplicableTo(element: JetWhenExpression): Boolean {
|
||||||
@@ -41,7 +39,7 @@ public class FoldWhenToReturnIntention : JetSelfTargetingOffsetIndependentIntent
|
|||||||
override fun applyTo(element: JetWhenExpression, editor: Editor) {
|
override fun applyTo(element: JetWhenExpression, editor: Editor) {
|
||||||
assert(!element.getEntries().isEmpty())
|
assert(!element.getEntries().isEmpty())
|
||||||
|
|
||||||
val newReturnExpression = psi.JetPsiFactory(element).createReturn(element)
|
val newReturnExpression = JetPsiFactory(element).createExpressionByPattern("return $0", element) as JetReturnExpression
|
||||||
val newWhenExpression = newReturnExpression.getReturnedExpression() as JetWhenExpression
|
val newWhenExpression = newReturnExpression.getReturnedExpression() as JetWhenExpression
|
||||||
|
|
||||||
for (entry in newWhenExpression.getEntries()) {
|
for (entry in newWhenExpression.getEntries()) {
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ private class LambdaToFunctionExpression(
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
replace(psiFactory.createReturn(this))
|
replace(psiFactory.createExpressionByPattern("return $0", this))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user