RFR: 8310033: Clarify return value of Java Time compareTo methods [v7]
Stephen Colebourne
scolebourne at openjdk.org
Thu Jul 20 19:37:46 UTC 2023
On Tue, 11 Jul 2023 17:54:23 GMT, Roger Riggs <rriggs at openjdk.org> wrote:
>> In java.time packages, clarify timeline order javadoc to mention "before" and "after" in the value of the `compareTo` method return values.
>> Add javadoc @see tags to isBefore and isAfter methods
>>
>> Replace use of "negative" and positive with "less than zero" and "greater than zero" in javadoc @return
>> The term "positive" is ambiguous, zero is considered positive and indicates equality.
>
> Roger Riggs has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 12 additional commits since the last revision:
>
> - Improve wording and remove markup for clarity
> - Merge branch 'master' into 8310033-time-compareto
> - Correct the descriptions to correctly identify the compareTo return
> value < 0 as this is before that, and > 0 as this is after that.
> Thanks to a careful reviewer spotting my reversing of the conditions.
> - Improve the grammar of "the comparator value is" -> "the comparator value, that is"
> Thanks for the reminder.
> - Merge branch 'master' into 8310033-time-compareto
> - Improve descriptions to be more specific and remove inappropriate use of before/after
> Remove extra blank lines
> - Clarify return values of date time classes
> - Use {@code xxx} to highlight the comparison against the arg.
> Update copyrights.
> - Merge branch 'master' into 8310033-time-compareto
> - Clarify for Duration, AbstractChronology, and Chronology
> - ... and 2 more: https://git.openjdk.org/jdk/compare/cbfb208d...1d39e2d4
Changes requested by scolebourne (Author).
src/java.base/share/classes/java/time/LocalDate.java line 1991:
> 1989: *
> 1990: * @param other the other date to compare to, not null
> 1991: * @return the comparator value, that is less than zero if this is before {@code other},
This text is incorrect. It does not match the description above re chronologies.
src/java.base/share/classes/java/time/LocalDateTime.java line 1810:
> 1808: *
> 1809: * @param other the other date-time to compare to, not null
> 1810: * @return the comparator value, that is less than zero if this is before {@code other},
This text is incorrect. It does not match the description above re chronologies.
src/java.base/share/classes/java/time/OffsetDateTime.java line 1805:
> 1803: *
> 1804: * @param other the other date-time to compare to, not null
> 1805: * @return the comparator value, that is the comparison with the {@code other}'s instant, if they are not equal;
This text is incorrect. It does not match the description above re offsets. (This would be a suitable description for `compareInstant`)
src/java.base/share/classes/java/time/OffsetTime.java line 1286:
> 1284: * @return the comparator value, that is the comparison of the UTC equivalent {@code other} instant,
> 1285: * if they are not equal, and if the UTC equivalent {@code other} instant is equal,
> 1286: * the comparison of this local date-time with {@code other} local date-time
This text is incorrect. It compares the local time, not the local date-time, when the instants are equal
src/java.base/share/classes/java/time/chrono/ChronoLocalDate.java line 703:
> 701: *
> 702: * @param other the other date to compare to, not null
> 703: * @return the comparator value, that is less than zero if this is before {@code other},
This text is incorrect. It does not match the description above re chronologies.
-------------
PR Review: https://git.openjdk.org/jdk/pull/14479#pullrequestreview-1539950887
PR Review Comment: https://git.openjdk.org/jdk/pull/14479#discussion_r1269880032
PR Review Comment: https://git.openjdk.org/jdk/pull/14479#discussion_r1269879973
PR Review Comment: https://git.openjdk.org/jdk/pull/14479#discussion_r1269881117
PR Review Comment: https://git.openjdk.org/jdk/pull/14479#discussion_r1269883364
PR Review Comment: https://git.openjdk.org/jdk/pull/14479#discussion_r1269884657
More information about the core-libs-dev
mailing list