KT-4568 Bugfix: Reformatted code to adhere to style guides. Removed unreachable cases in when expression for ConvertNegatedExpression. Fixed last element access. Changed array list to simple list.
This commit is contained in:
committed by
Mikhael Bogdanov
parent
a5f7ac63a8
commit
ecaa7b61dd
+5
-4
@@ -25,7 +25,7 @@ import org.jetbrains.jet.lang.psi.JetPsiFactory
|
|||||||
import org.jetbrains.jet.lang.psi.JetParenthesizedExpression
|
import org.jetbrains.jet.lang.psi.JetParenthesizedExpression
|
||||||
import org.jetbrains.jet.lang.psi.JetPsiUtil
|
import org.jetbrains.jet.lang.psi.JetPsiUtil
|
||||||
import org.jetbrains.jet.lang.psi.JetExpression
|
import org.jetbrains.jet.lang.psi.JetExpression
|
||||||
import java.util.ArrayList
|
import java.util.LinkedList
|
||||||
|
|
||||||
|
|
||||||
public class ConvertNegatedBooleanSequenceIntention : JetSelfTargetingIntention<JetBinaryExpression>(
|
public class ConvertNegatedBooleanSequenceIntention : JetSelfTargetingIntention<JetBinaryExpression>(
|
||||||
@@ -52,7 +52,7 @@ public class ConvertNegatedBooleanSequenceIntention : JetSelfTargetingIntention<
|
|||||||
|
|
||||||
val elements = splitBooleanSequence(element)!!
|
val elements = splitBooleanSequence(element)!!
|
||||||
val bareExpressions = elements.map { prefixExpression -> prefixExpression.getBaseExpression()!!.getText() }
|
val bareExpressions = elements.map { prefixExpression -> prefixExpression.getBaseExpression()!!.getText() }
|
||||||
val negatedExpression = bareExpressions.subList(0, bareExpressions.size()-1).foldRight(
|
val negatedExpression = bareExpressions.subList(0, bareExpressions.lastIndex).foldRight(
|
||||||
"!(${bareExpressions.last()}", { negated, expression -> "$expression $operatorText $negated" }
|
"!(${bareExpressions.last()}", { negated, expression -> "$expression $operatorText $negated" }
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ public class ConvertNegatedBooleanSequenceIntention : JetSelfTargetingIntention<
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun splitBooleanSequence(expression: JetBinaryExpression): List<JetPrefixExpression>? {
|
fun splitBooleanSequence(expression: JetBinaryExpression): List<JetPrefixExpression>? {
|
||||||
val itemList = ArrayList<JetPrefixExpression>()
|
val itemList = LinkedList<JetPrefixExpression>()
|
||||||
val firstOperator = expression.getOperationToken()
|
val firstOperator = expression.getOperationToken()
|
||||||
var currentItem: JetBinaryExpression? = expression
|
var currentItem: JetBinaryExpression? = expression
|
||||||
|
|
||||||
@@ -79,7 +79,8 @@ public class ConvertNegatedBooleanSequenceIntention : JetSelfTargetingIntention<
|
|||||||
val leftChild = currentItem!!.getLeft()
|
val leftChild = currentItem!!.getLeft()
|
||||||
if (leftChild is JetPrefixExpression) {
|
if (leftChild is JetPrefixExpression) {
|
||||||
itemList.add(leftChild as JetPrefixExpression)
|
itemList.add(leftChild as JetPrefixExpression)
|
||||||
} else if (leftChild !is JetBinaryExpression) {
|
}
|
||||||
|
else if (leftChild !is JetBinaryExpression) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+3
-4
@@ -29,6 +29,7 @@ import org.jetbrains.jet.lang.psi.JetExpression
|
|||||||
import org.jetbrains.jet.lang.psi.JetConstantExpression
|
import org.jetbrains.jet.lang.psi.JetConstantExpression
|
||||||
import org.jetbrains.jet.lang.psi.JetSimpleNameExpression
|
import org.jetbrains.jet.lang.psi.JetSimpleNameExpression
|
||||||
import java.util.ArrayList
|
import java.util.ArrayList
|
||||||
|
import java.util.LinkedList
|
||||||
|
|
||||||
public class ConvertNegatedExpressionWithDemorgansLawIntention : JetSelfTargetingIntention<JetPrefixExpression>(
|
public class ConvertNegatedExpressionWithDemorgansLawIntention : JetSelfTargetingIntention<JetPrefixExpression>(
|
||||||
"convert.negated.expression.with.demorgans.law", javaClass()
|
"convert.negated.expression.with.demorgans.law", javaClass()
|
||||||
@@ -61,7 +62,7 @@ public class ConvertNegatedExpressionWithDemorgansLawIntention : JetSelfTargetin
|
|||||||
}
|
}
|
||||||
val elements = splitBooleanSequence(baseExpression)
|
val elements = splitBooleanSequence(baseExpression)
|
||||||
val negatedElements = elements!!.map { exp -> handleSpecial(exp) }
|
val negatedElements = elements!!.map { exp -> handleSpecial(exp) }
|
||||||
val negatedExpression = negatedElements.subList(0,negatedElements.size()-1).foldRight(
|
val negatedExpression = negatedElements.subList(0, negatedElements.lastIndex).foldRight(
|
||||||
"${negatedElements.last()}", { negated, exp -> "$exp $operatorText $negated" })
|
"${negatedElements.last()}", { negated, exp -> "$exp $operatorText $negated" })
|
||||||
|
|
||||||
val newExpression = JetPsiFactory.createExpression(element.getProject(), negatedExpression)
|
val newExpression = JetPsiFactory.createExpression(element.getProject(), negatedExpression)
|
||||||
@@ -70,8 +71,6 @@ public class ConvertNegatedExpressionWithDemorgansLawIntention : JetSelfTargetin
|
|||||||
|
|
||||||
fun handleSpecial(expression: JetExpression): String {
|
fun handleSpecial(expression: JetExpression): String {
|
||||||
return when(expression) {
|
return when(expression) {
|
||||||
JetTokens.TRUE_KEYWORD -> JetTokens.FALSE_KEYWORD.getValue()
|
|
||||||
JetTokens.FALSE_KEYWORD -> JetTokens.TRUE_KEYWORD.getValue()
|
|
||||||
is JetSimpleNameExpression, is JetConstantExpression, is JetPrefixExpression,
|
is JetSimpleNameExpression, is JetConstantExpression, is JetPrefixExpression,
|
||||||
is JetParenthesizedExpression -> "!${expression.getText()}"
|
is JetParenthesizedExpression -> "!${expression.getText()}"
|
||||||
else -> "!(${expression.getText()})"
|
else -> "!(${expression.getText()})"
|
||||||
@@ -79,7 +78,7 @@ public class ConvertNegatedExpressionWithDemorgansLawIntention : JetSelfTargetin
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun splitBooleanSequence(expression: JetBinaryExpression): List<JetExpression>? {
|
fun splitBooleanSequence(expression: JetBinaryExpression): List<JetExpression>? {
|
||||||
val itemList = ArrayList<JetExpression>()
|
val itemList = LinkedList<JetExpression>()
|
||||||
val firstOperator = expression.getOperationToken()
|
val firstOperator = expression.getOperationToken()
|
||||||
var currentItem: JetExpression? = expression
|
var currentItem: JetExpression? = expression
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user