On Wed, 3 May 2023 20:32:25 GMT, Justin Lu <j...@openjdk.org> wrote:

>> Please review this PR which adds the method `caseFoldLanguageTag(String 
>> languageTag)` to java.util.Locale.
>> 
>> This method case folds a language tag to adhere to _[section 2.1.1. 
>> Formatting of Language Tags of 
>> RFC5646](https://www.rfc-editor.org/rfc/rfc5646.html#section-2.1)_. This 
>> format is defined as _"All subtags, including extension and private use 
>> subtags, use lowercase letters with two exceptions: two-letter and 
>> four-letter subtags that neither appear at the start of the tag nor occur 
>> after singletons.  Such two-letter subtags are all uppercase ... and 
>> four-letter subtags are titlecase."_.
>> 
>> 
>> In order to match the behavior of existing language tag related Locale 
>> methods, this method matches the 2.1.1 RFC5646 specification with the 
>> following **exceptions**:
>> - Will not case fold variant subtags
>> - Will not case fold private use subtags prefixed by "lvariant"
>> 
>> As an example, 
>> `caseFoldLanguageTag("ja-kana-jp-x-lvariant-Oracle-JDK-Standard-Edition")` 
>> returns _"ja-Kana-JP-x-lvariant-Oracle-JDK-Standard-Edition"_. Further 
>> examples can be seen in the test file.
>
> Justin Lu has updated the pull request incrementally with three additional 
> commits since the last revision:
> 
>  - Review: SBldr should be pre allocated with input tag
>  - Review: drop wwildcard import and replace subtags[i] with subtag
>  - Review: Include multiple singleton extensions in test

Looks good.

-------------

Marked as reviewed by rriggs (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/13679#pullrequestreview-1413697034

Reply via email to