On Sat, 26 Jul 2025 10:10:40 GMT, Tatsunori Uchino <d...@openjdk.org> wrote:
>> Adds `codePointCount()` overloads to `String`, `Character`, >> `(Abstract)StringBuilder`, and `StringBuffer` to make it possible to >> conveniently retrieve the length of a string as code points without extra >> boundary checks. >> >> >> if (superTremendouslyLongExpressionYieldingAString().codePointCount() > >> limit) { >> throw new Exception("exceeding length"); >> } >> >> >> Is a CSR required to this change? > > Tatsunori Uchino has updated the pull request incrementally with four > additional commits since the last revision: > > - Update `@bug` in correct file > - Add default implementation on codePointCount in CharSequence > - Update `@bug` entries in test class doc comments > - Discard changes on code whose form is not `str.codePointCount(0, > str.length())` Its author may have prioritized the versatility of the APIs. > `codePointCount(0, length())` This workaround is only effective if the instance expression is sufficiently short or can afford to be stored to a new temporary variable once. It can be a pain in the neck that you have to write the expression even twice to get the number of code points in the entire string instance. ------------- PR Comment: https://git.openjdk.org/jdk/pull/26461#issuecomment-3148429115