package runEnv; import node.*; import env.*; public abstract class RunValue { /* Represents a run time value */ public int intValue() { throw new Error( "Can't cast runtime " + this + " to int" ); } public double floatValue() { throw new Error( "Can't cast runtime " + this + " to float" ); } public char charValue() { throw new Error( "Can't cast runtime " + this + " to char" ); } public boolean boolValue() { throw new Error( "Can't cast runtime " + this + " to bool" ); } public String stringValue() { throw new Error( "Can't cast runtime " + this + " to string" ); } public PtrValue addressValue() { throw new Error( "Can't cast runtime " + this + " to reference" ); } public DeclList methodTable() { throw new Error( "Can't cast runtime " + this + " to method table" ); } public abstract boolean equals( RunValue otherValue ); }