1 23 package org.hammurapi.inspectors; 24 25 import java.util.Iterator ; 26 27 import org.hammurapi.InspectorBase; 28 29 import com.pavelvlasov.jsel.expressions.ConditionalExpression; 30 import com.pavelvlasov.jsel.expressions.False; 31 import com.pavelvlasov.jsel.expressions.True; 32 import com.pavelvlasov.review.SourceMarker; 33 34 38 public class ConditionalExpressionRule extends InspectorBase { 39 40 public void visit(ConditionalExpression expression) { 41 boolean hasNonBooleanLiterals=false; 42 Iterator it=expression.getOperands().iterator(); 43 44 if (it.hasNext()) { 46 it.next(); 47 } 48 49 while (it.hasNext()) { 50 Object operand=it.next(); 51 if (operand instanceof True) { 52 continue; 53 } 54 55 if (operand instanceof False) { 56 continue; 57 } 58 59 hasNonBooleanLiterals=true; 60 } 61 62 if (!hasNonBooleanLiterals) { 63 context.reportViolation((SourceMarker) expression); 64 } 65 } 66 } 67 | Popular Tags |