review request for 6798511/6860431: Include functionality of Surrogate in Character -> use scenarios
Ulf Zibis
Ulf.Zibis at gmx.de
Mon Sep 7 19:44:23 UTC 2009
Sherman,
thanks for insisting on icu4j. I must admit, I newer heard about it. :-(
I took a short look on http://icu-project.org/download/4.2.html#ICU4J
etc. Very interesting stuff.
Now I'm thinking: why they don't use Character class? Do they miss those
3..4 methods? ;-)
May be it's time to talk with them, so they could reduce their
footprint, which would reduce JDK footprint in a row.
-Ulf
Am 07.09.2009 20:27, Xueming Shen schrieb:
>
> Ulf,
>
> sun.text.normalizer might not be a good example, it is "independent
> third-party" package we licensed. Usually
> we try our best to keep this kind of package as-is, for maintenance
> reason, you don't want to make the trivial
> update allover the places again and again whenever there is a version
> upgrade. Yes, I did make some modification
> when dropped in the package when I was the owner years ago, that was
> for functionally better fit with the rest
> of the code and mostly for better performance (especially faster
> startup). You should be able to "smell" that is
> part of the icu4j, so it has its own utf16 handling:-)
>
> sherman
>
>
> Ulf Zibis wrote:
>>
>> Looking deeper in the classes you can find many use scenarios.
>> E.g. class sun.text.normalizer.UTF16 more ore less is a duplicate of
>> sun.nio.cs.Surrogate.
>>
>>>
>>> I'm not saying we can NOT add isBMP() (I know icu4j's UCharacter
>>> class does have one), just
>>> believe it's arguably not necessary.
>>>
>>> Same as the pair
>>>
>>> -- static char highSurrogate(int codePoint);
>>
>> --> sun.text.normalizer.UTF16.getLeadSurrogate(int char32)
>>
>>> -- static char lowSurrogate(int codePoint);
>>
>> --> sun.text.normalizer.UTF16.getTrailSurrogate(int char32)
>>
>>> -- CharBuffer.putCodePoint(int)
>>
>> Maybe it would be better to add appendCodePoint(int cp) to
>> Charsequence, of something similar.
>> See: sun.text.normalizer.UTF16.append(StringBuffer target, int char32)
>> See: java.text.CharacterIterator.CodePointIterator
>>
>>
>>
>> -Ulf
>>
>>
>
>
More information about the core-libs-dev
mailing list