1 23 package org.hammurapi.inspectors; 24 25 import org.hammurapi.InspectorBase; 26 27 import com.pavelvlasov.jsel.JselException; 28 import com.pavelvlasov.jsel.expressions.TypeCast; 29 import com.pavelvlasov.jsel.primitives.PrimitiveType; 30 import com.pavelvlasov.review.SourceMarker; 31 32 33 39 public class CastingPrimitiveTypesRule extends InspectorBase { 40 41 public void visit(TypeCast element) throws JselException { 42 if (element.getTypeSpecification().getDimensions()==0 && element.getTypeSpecification().getType() instanceof PrimitiveType) { 43 PrimitiveType castType=(PrimitiveType) element.getTypeSpecification().getType(); 44 PrimitiveType sourceType=(PrimitiveType) element.getExpression().getTypeSpecification().getType(); 45 if (castType.isLowerPrecision(sourceType)) { 46 context.reportViolation((SourceMarker) element); 47 } 48 } 49 } 50 51 } 52 | Popular Tags |