<i18n dev> RFR: 8353322: Specification of ChoiceFormat#parse(String, ParsePosition) is inadequate [v2]
Naoto Sato
naoto at openjdk.org
Tue Apr 1 19:42:20 UTC 2025
On Tue, 1 Apr 2025 19:04:25 GMT, Justin Lu <jlu at openjdk.org> wrote:
>> Please review this PR which specifies the `ChoiceFormat#parse(String, ParsePosition)` method. A corresponding CSR is filed. The current specification is simply "Parses a Number from the input text" which does not indicate how the value is returned. The criteria for a match, as well as no match should be made clear.
>
> Justin Lu has updated the pull request incrementally with one additional commit since the last revision:
>
> reflect Naoto's review
I am OK with returning `Double.NaN` as normative. I believe the risk is quite low, and it would be only a conformance issue (no practical problem will arise)
src/java.base/share/classes/java/text/ChoiceFormat.java line 564:
> 562: * {@code Double}. The value returned is the {@code limit} corresponding
> 563: * to the {@code format} that is the longest substring of the input text.
> 564: * Matching is done in ascending order, when multiple {@code formats} match
Nit: {@code format}s
src/java.base/share/classes/java/text/ChoiceFormat.java line 584:
> 582: * first index of the character that caused the parse to fail.
> 583: * @return A Number which represents the {@code limit} corresponding to the {@code
> 584: * format} parsed.
We could clarify the no match case with `Double.NaN` here too
-------------
PR Review: https://git.openjdk.org/jdk/pull/24361#pullrequestreview-2733870693
PR Review Comment: https://git.openjdk.org/jdk/pull/24361#discussion_r2023570395
PR Review Comment: https://git.openjdk.org/jdk/pull/24361#discussion_r2023571566
More information about the i18n-dev
mailing list