The most extensive changes are to TemporalExtent, TemporalInstant, and TemporalInterval. Ian and I found some problems with their previous implementations and concluded that it may take extensive investigation to figure out the impacts that changing the odd design choices might have. This contains what I hope is the minimum number of necessary changes to fix the existing problems with temporal indices.
The reason that TemporalInterval implements the equals/hashCode contract is because there are unit tests that add instances to collections, then compare instances instantiated by queries against those values.
The most extensive changes are to
TemporalExtent
,TemporalInstant
, andTemporalInterval
. Ian and I found some problems with their previous implementations and concluded that it may take extensive investigation to figure out the impacts that changing the odd design choices might have. This contains what I hope is the minimum number of necessary changes to fix the existing problems with temporal indices. The reason thatTemporalInterval
implements theequals
/hashCode
contract is because there are unit tests that add instances to collections, then compare instances instantiated by queries against those values.