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:
Ross Hanson
2014-04-21 10:08:51 -04:00
committed by Mikhael Bogdanov
parent a5f7ac63a8
commit ecaa7b61dd
2 changed files with 20 additions and 20 deletions
@@ -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
} }
@@ -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