You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Matt Juntunen (JIRA)" <ji...@apache.org> on 2019/01/20 03:10:00 UTC
[jira] [Updated] (NUMBERS-90) DoublePrecisionContext
[ https://issues.apache.org/jira/browse/NUMBERS-90?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matt Juntunen updated NUMBERS-90:
---------------------------------
Description:
We should add a new class to commons-numbers-core that encapsulates configurable strategies for comparing doubles. This is required for GEOMETRY-11. Here is what I'm picturing:
{code:java}
// abstract class for the general concept of comparisons
public abstract class DoublePrecisionContext implements Comparator<Double> {
public abstract boolean equals(double a, double b);
public int compare(double a, double b) { /* ... */ }
public int compare(Double a, Double b) { /* ... */ }
}
// ...
// concrete class implementing a specific strategy
public class EpsilonUlpDoublePrecisionContext extends DoublePrecisionContext {
public EpsilonUlpDoublePrecisionContext(double eps, double maxUlps) { /* ... */ }
@Override
public boolean equals(double a, double b) { /* ... */ }
} {code}
Pull request: https://github.com/apache/commons-numbers/pull/28
was:
We should add a new class to commons-numbers-core that encapsulates configurable strategies for comparing doubles. This is required for GEOMETRY-11. Here is what I'm picturing:
{code:java}
// abstract class for the general concept of comparisons
public abstract class DoublePrecisionContext implements Comparator<Double> {
public abstract boolean equals(double a, double b);
public int compare(double a, double b) { /* ... */ }
public int compare(Double a, Double b) { /* ... */ }
}
// ...
// concrete class implementing a specific strategy
public class EpsilonUlpDoublePrecisionContext extends DoublePrecisionContext {
public EpsilonUlpDoublePrecisionContext(double eps, double maxUlps) { /* ... */ }
@Override
public boolean equals(double a, double b) { /* ... */ }
}
{code}
> DoublePrecisionContext
> ----------------------
>
> Key: NUMBERS-90
> URL: https://issues.apache.org/jira/browse/NUMBERS-90
> Project: Commons Numbers
> Issue Type: New Feature
> Reporter: Matt Juntunen
> Priority: Blocker
> Time Spent: 20m
> Remaining Estimate: 0h
>
> We should add a new class to commons-numbers-core that encapsulates configurable strategies for comparing doubles. This is required for GEOMETRY-11. Here is what I'm picturing:
> {code:java}
> // abstract class for the general concept of comparisons
> public abstract class DoublePrecisionContext implements Comparator<Double> {
> public abstract boolean equals(double a, double b);
> public int compare(double a, double b) { /* ... */ }
> public int compare(Double a, Double b) { /* ... */ }
> }
> // ...
> // concrete class implementing a specific strategy
> public class EpsilonUlpDoublePrecisionContext extends DoublePrecisionContext {
> public EpsilonUlpDoublePrecisionContext(double eps, double maxUlps) { /* ... */ }
> @Override
> public boolean equals(double a, double b) { /* ... */ }
> } {code}
> Pull request: https://github.com/apache/commons-numbers/pull/28
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)