[ https://issues.apache.org/jira/browse/NUMBERS-45?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16059309#comment-16059309 ]
Gilles commented on NUMBERS-45: ------------------------------- Can't we keep them as syntactic sugar (with the Javadoc mentioning that _they must not be used within methods that aims to comply with the standard_)? > Removal of isNaN() and isInfinite() methods from Complex class > -------------------------------------------------------------- > > Key: NUMBERS-45 > URL: https://issues.apache.org/jira/browse/NUMBERS-45 > Project: Commons Numbers > Issue Type: Improvement > Affects Versions: 1.0 > Reporter: Eric Barnhill > Priority: Minor > Fix For: 1.0 > > > Complex() currently contains the methods isNaN() and isInfinite() which > return positive when either the real or the imaginary components of the > Complex number are infinite. They are principally used as a "short circuit" > in many of the methods, that is, isNaN() is checked and if true, Complex.NaN > is returned without further processing. > isNaN() and isInfinite() should be removed from Complex. For the purposes of > ISO C standards, nearly all methods need to handle arguments and return > values in which either real or imaginary is NaN or Infinite, but not both. > Thus this quick "sanity check" prevents Commons from complying with ISO C > standards. > It is easy enough to check whether the fields Complex.real and > Complex.imaginary with Double.isNaN() or Double.isInfinite() if comparison is > desired. > These methods then need to be removed from certain tests in ComplexTest which > call the isNaN() or isInfinite() methods. Most of these methods are > superseded by the new C standard tests anyway. -- This message was sent by Atlassian JIRA (v6.4.14#64029)