1 33 package smallsql.database; 34 35 36 abstract class ExpressionFunctionReturnFloat extends ExpressionFunction { 37 38 boolean isNull() throws Exception { 39 return param1.isNull(); 40 } 41 42 final boolean getBoolean() throws Exception { 43 return getDouble() != 0; 44 } 45 46 final int getInt() throws Exception { 47 return (int)getDouble(); 48 } 49 50 final long getLong() throws Exception { 51 return (long)getDouble(); 52 } 53 54 final float getFloat() throws Exception { 55 return (float)getDouble(); 56 } 57 58 59 long getMoney() throws Exception { 60 return Utils.doubleToMoney(getDouble()); 61 } 62 63 final MutableNumeric getNumeric() throws Exception { 64 if(isNull()) return null; 65 double value = getDouble(); 66 if(Double.isInfinite(value) || Double.isNaN(value)) 67 return null; 68 return new MutableNumeric(value); 69 } 70 71 final Object getObject() throws Exception { 72 if(isNull()) return null; 73 return new Double (getDouble()); 74 } 75 76 final String getString() throws Exception { 77 Object obj = getObject(); 78 if(obj == null) return null; 79 return obj.toString(); 80 } 81 82 final int getDataType() { 83 return SQLTokenizer.FLOAT; 84 } 85 86 87 } | Popular Tags |