Hi,
I'm creating a new utilities module and I'm trying to decide whether to keep
the below code block (Contained in the Precision.roundUnscaled() method - BTW
it contains a new exception type I'm playing with - see
https://github.com/firefly-math/firefly-math-exceptions if interested - the
utilities module will be published soon putting the new exception code to
validated use ... hopefully - anyways here's the block):
case BigDecimal.ROUND_UNNECESSARY:
if (unscaled != FastMath.floor(unscaled)) {
throw new
MathException(ExceptionTypes.MATH_ARITHMETIC_EXCEPTION);
}
break;
So I would pass in the unscaled argument and say that rounding is not
necessary. Then if the exception is thrown, I know that presumably I should
have chosen one of the other BigDecimal rounding operations...?
To me it seems simpler to check for the required operation like this before
proceeding:
if (unscaled != FastMath.floor(unscaled)) {
// If necessary throw an application specific exception
}
Unless I'm missing something big, I'll remove the above code block, as well as
the MATH_ARITHMETIC_EXCEPTION in the firefly-math-utilities module....WDYT?
Cheers,
- Ole
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]