private void validateLiteralAsDouble(SqlLiteral literal) { BigDecimal bd = (BigDecimal) literal.getValue(); double d = bd.doubleValue(); if (Double.isInfinite(d) || Double.isNaN(d)) { // overflow throw newValidationError(literal, RESOURCE.numberLiteralOutOfRange(Util.toScientificNotation(bd))); } // REVIEW jvs 4-Aug-2004: what about underflow? }
public String toValue() { BigDecimal bd = (BigDecimal) value; if (isExact) { return value.toString(); } return Util.toScientificNotation(bd); }
public String toValue() { BigDecimal bd = (BigDecimal) value; if (isExact) { return value.toString(); } return Util.toScientificNotation(bd); }
private void validateLiteralAsDouble(SqlLiteral literal) { BigDecimal bd = (BigDecimal) literal.getValue(); double d = bd.doubleValue(); if (Double.isInfinite(d) || Double.isNaN(d)) { // overflow throw newValidationError(literal, RESOURCE.numberLiteralOutOfRange(Util.toScientificNotation(bd))); } // REVIEW jvs 4-Aug-2004: what about underflow? }
private void validateLiteralAsDouble(SqlLiteral literal) { BigDecimal bd = (BigDecimal) literal.getValue(); double d = bd.doubleValue(); if (Double.isInfinite(d) || Double.isNaN(d)) { // overflow throw newValidationError(literal, RESOURCE.numberLiteralOutOfRange(Util.toScientificNotation(bd))); } // REVIEW jvs 4-Aug-2004: what about underflow? }
case DOUBLE: assert value instanceof BigDecimal; pw.print(Util.toScientificNotation((BigDecimal) value)); break; case BIGINT:
case DOUBLE: assert value instanceof BigDecimal; pw.print(Util.toScientificNotation((BigDecimal) value)); break; case BIGINT:
TestUtil.assertEqualsVerbose( "1.234E-3", Util.toScientificNotation(bd)); bd = new BigDecimal("0.001"); TestUtil.assertEqualsVerbose( "1E-3", Util.toScientificNotation(bd)); bd = new BigDecimal("-0.001"); TestUtil.assertEqualsVerbose( "-1E-3", Util.toScientificNotation(bd)); bd = new BigDecimal("1"); TestUtil.assertEqualsVerbose( "1E0", Util.toScientificNotation(bd)); bd = new BigDecimal("-1"); TestUtil.assertEqualsVerbose( "-1E0", Util.toScientificNotation(bd)); bd = new BigDecimal("1.0"); TestUtil.assertEqualsVerbose( "1.0E0", Util.toScientificNotation(bd)); bd = new BigDecimal("12345"); TestUtil.assertEqualsVerbose( "1.2345E4", Util.toScientificNotation(bd)); bd = new BigDecimal("12345.00"); TestUtil.assertEqualsVerbose(
TestUtil.assertEqualsVerbose( "1.234E-3", Util.toScientificNotation(bd)); bd = new BigDecimal("0.001"); TestUtil.assertEqualsVerbose( "1E-3", Util.toScientificNotation(bd)); bd = new BigDecimal("-0.001"); TestUtil.assertEqualsVerbose( "-1E-3", Util.toScientificNotation(bd)); bd = new BigDecimal("1"); TestUtil.assertEqualsVerbose( "1E0", Util.toScientificNotation(bd)); bd = new BigDecimal("-1"); TestUtil.assertEqualsVerbose( "-1E0", Util.toScientificNotation(bd)); bd = new BigDecimal("1.0"); TestUtil.assertEqualsVerbose( "1.0E0", Util.toScientificNotation(bd)); bd = new BigDecimal("12345"); TestUtil.assertEqualsVerbose( "1.2345E4", Util.toScientificNotation(bd)); bd = new BigDecimal("12345.00"); TestUtil.assertEqualsVerbose(