public static SqlNumericLiteral createApproxNumeric( String s, SqlParserPos pos) { BigDecimal value = SqlParserUtil.parseDecimal(s); return new SqlNumericLiteral(value, null, null, false, pos); }
public static SqlNumericLiteral createApproxNumeric( String s, SqlParserPos pos) { BigDecimal value = SqlParserUtil.parseDecimal(s); return new SqlNumericLiteral(value, null, null, false, pos); }
@Override public SqlNumericLiteral clone(SqlParserPos pos) { return new SqlNumericLiteral((BigDecimal) value, getPrec(), getScale(), isExact, pos); }
@Override public SqlNumericLiteral clone(SqlParserPos pos) { return new SqlNumericLiteral((BigDecimal) value, getPrec(), getScale(), isExact, pos); }
public static SqlNumericLiteral createExactNumeric( String s, SqlParserPos pos) { BigDecimal value; int prec; int scale; int i = s.indexOf('.'); if ((i >= 0) && ((s.length() - 1) != i)) { value = SqlParserUtil.parseDecimal(s); scale = s.length() - i - 1; assert scale == value.scale() : s; prec = s.length() - 1; } else if ((i >= 0) && ((s.length() - 1) == i)) { value = SqlParserUtil.parseInteger(s.substring(0, i)); scale = 0; prec = s.length() - 1; } else { value = SqlParserUtil.parseInteger(s); scale = 0; prec = s.length(); } return new SqlNumericLiteral( value, prec, scale, true, pos); }
public static SqlNumericLiteral createExactNumeric( String s, SqlParserPos pos) { BigDecimal value; int prec; int scale; int i = s.indexOf('.'); if ((i >= 0) && ((s.length() - 1) != i)) { value = SqlParserUtil.parseDecimal(s); scale = s.length() - i - 1; assert scale == value.scale() : s; prec = s.length() - 1; } else if ((i >= 0) && ((s.length() - 1) == i)) { value = SqlParserUtil.parseInteger(s.substring(0, i)); scale = 0; prec = s.length() - 1; } else { value = SqlParserUtil.parseInteger(s); scale = 0; prec = s.length(); } return new SqlNumericLiteral( value, prec, scale, true, pos); }
public static SqlNumericLiteral createNegative( SqlNumericLiteral num, SqlParserPos pos) { return new SqlNumericLiteral( ((BigDecimal) num.getValue()).negate(), num.getPrec(), num.getScale(), num.isExact(), pos); }
public static SqlNumericLiteral createNegative( SqlNumericLiteral num, SqlParserPos pos) { return new SqlNumericLiteral( ((BigDecimal) num.getValue()).negate(), num.getPrec(), num.getScale(), num.isExact(), pos); }