From 07818b64da97195f2b962ab7cce7aa240ea65781 Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Wed, 16 Aug 2017 12:17:55 +0200 Subject: [PATCH] IPP: use streams --- .../siyeh/ipp/bool/ConjunctionPredicate.java | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/plugins/IntentionPowerPak/src/com/siyeh/ipp/bool/ConjunctionPredicate.java b/plugins/IntentionPowerPak/src/com/siyeh/ipp/bool/ConjunctionPredicate.java index 8b29b30a5be5..da3a2fd62747 100644 --- a/plugins/IntentionPowerPak/src/com/siyeh/ipp/bool/ConjunctionPredicate.java +++ b/plugins/IntentionPowerPak/src/com/siyeh/ipp/bool/ConjunctionPredicate.java @@ -1,5 +1,5 @@ /* - * Copyright 2003-2005 Dave Griffith + * Copyright 2003-2017 Dave Griffith, Bas Leijdekkers * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,11 +17,12 @@ package com.siyeh.ipp.bool; import com.intellij.psi.JavaTokenType; import com.intellij.psi.PsiElement; -import com.intellij.psi.PsiExpression; import com.intellij.psi.PsiPolyadicExpression; import com.intellij.psi.tree.IElementType; +import com.intellij.psi.util.PsiUtilCore; import com.siyeh.ipp.base.PsiElementPredicate; -import com.siyeh.ipp.psiutils.ErrorUtil; + +import java.util.Arrays; class ConjunctionPredicate implements PsiElementPredicate { @@ -34,14 +35,7 @@ class ConjunctionPredicate implements PsiElementPredicate { if (!tokenType.equals(JavaTokenType.ANDAND) && !tokenType.equals(JavaTokenType.OROR)) { return false; } - if (ErrorUtil.containsError(expression)) { - return false; - } - for (PsiExpression operand : expression.getOperands()) { - if (ErrorUtil.containsError(operand)) { - return false; - } - } - return true; + return !PsiUtilCore.hasErrorElementChild(expression) && + Arrays.stream(expression.getOperands()).noneMatch(PsiUtilCore::hasErrorElementChild); } }