Clover coverage report - Java Language Levels Test Coverage (javalanglevels-20120305-r5436)
Coverage timestamp: Sun Mar 4 2012 22:02:46 CST
file stats: LOC: 118   Methods: 10
NCLOC: 76   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
CastExpression.java 27.8% 51% 50% 45.6%
coverage coverage
 1    package edu.rice.cs.javalanglevels.tree;
 2   
 3    import edu.rice.cs.javalanglevels.SourceInfo;
 4   
 5    /**
 6    * Class CastExpression, a component of the JExpressionIF composite hierarchy.
 7    * Note: null is not allowed as a value for any field.
 8    * @version Generated automatically by ASTGen at Sun Mar 04 22:01:28 CST 2012
 9    */
 10    public class CastExpression extends Expression {
 11    private final Type _type;
 12    private final Expression _value;
 13   
 14    /**
 15    * Constructs a CastExpression.
 16    * @throws java.lang.IllegalArgumentException If any parameter to the constructor is null.
 17    */
 18  15 public CastExpression(SourceInfo in_sourceInfo, Type in_type, Expression in_value) {
 19  15 super(in_sourceInfo);
 20   
 21  15 if (in_type == null) {
 22  0 throw new java.lang.IllegalArgumentException("Parameter 'type' to the CastExpression constructor was null. This class may not have null field values.");
 23    }
 24  15 _type = in_type;
 25   
 26  15 if (in_value == null) {
 27  0 throw new java.lang.IllegalArgumentException("Parameter 'value' to the CastExpression constructor was null. This class may not have null field values.");
 28    }
 29  15 _value = in_value;
 30    }
 31   
 32  39 final public Type getType() { return _type; }
 33  36 final public Expression getValue() { return _value; }
 34   
 35  19 public <RetType> RetType visit(JExpressionIFVisitor<RetType> visitor) { return visitor.forCastExpression(this); }
 36  0 public void visit(JExpressionIFVisitor_void visitor) { visitor.forCastExpression(this); }
 37   
 38    /**
 39    * Implementation of toString that uses
 40    * {@link #output} to generated nicely tabbed tree.
 41    */
 42  0 public java.lang.String toString() {
 43  0 java.io.StringWriter w = new java.io.StringWriter();
 44  0 output(w);
 45  0 return w.toString();
 46    }
 47   
 48    /**
 49    * Prints this object out as a nicely tabbed tree.
 50    */
 51  0 public void output(java.io.Writer writer) {
 52  0 outputHelp(new TabPrintWriter(writer, 2));
 53    }
 54   
 55  10 public void outputHelp(TabPrintWriter writer) {
 56  10 writer.print("CastExpression" + ":");
 57  10 writer.indent();
 58   
 59  10 writer.startLine("");
 60  10 writer.print("sourceInfo = ");
 61  10 SourceInfo temp_sourceInfo = getSourceInfo();
 62  10 if (temp_sourceInfo == null) {
 63  0 writer.print("null");
 64    } else {
 65  10 writer.print(temp_sourceInfo);
 66    }
 67   
 68  10 writer.startLine("");
 69  10 writer.print("type = ");
 70  10 Type temp_type = getType();
 71  10 if (temp_type == null) {
 72  0 writer.print("null");
 73    } else {
 74  10 temp_type.outputHelp(writer);
 75    }
 76   
 77  10 writer.startLine("");
 78  10 writer.print("value = ");
 79  10 Expression temp_value = getValue();
 80  10 if (temp_value == null) {
 81  0 writer.print("null");
 82    } else {
 83  10 temp_value.outputHelp(writer);
 84    }
 85  10 writer.unindent();
 86    }
 87   
 88    /**
 89    * Implementation of equals that is based on the values
 90    * of the fields of the object. Thus, two objects
 91    * created with identical parameters will be equal.
 92    */
 93  0 public boolean equals(java.lang.Object obj) {
 94  0 if (obj == null) return false;
 95  0 if ((obj.getClass() != this.getClass()) || (obj.hashCode() != this.hashCode())) {
 96  0 return false;
 97    } else {
 98  0 CastExpression casted = (CastExpression) obj;
 99  0 if (! (getType().equals(casted.getType()))) return false;
 100  0 if (! (getValue().equals(casted.getValue()))) return false;
 101  0 return true;
 102    }
 103    }
 104   
 105    /**
 106    * Implementation of hashCode that is consistent with
 107    * equals. The value of the hashCode is formed by
 108    * XORing the hashcode of the class object with
 109    * the hashcodes of all the fields of the object.
 110    */
 111  0 protected int generateHashCode() {
 112  0 int code = getClass().hashCode();
 113  0 code ^= 0;
 114  0 code ^= getType().hashCode();
 115  0 code ^= getValue().hashCode();
 116  0 return code;
 117    }
 118    }