diff options
author | Elliott Hughes <enh@google.com> | 2010-04-12 18:32:50 -0700 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2010-04-13 10:56:37 -0700 |
commit | 9de899cc3ffd3aa3f8f827201cbe14120609018b (patch) | |
tree | 0c81bf39b8c8e1d393c31a9e7e68a4de7e4c9fe7 /icu/src/main/java | |
parent | 4a6cd08d55ec407dea29586cc917f8a423f5645f (diff) | |
download | libcore-9de899cc3ffd3aa3f8f827201cbe14120609018b.zip libcore-9de899cc3ffd3aa3f8f827201cbe14120609018b.tar.gz libcore-9de899cc3ffd3aa3f8f827201cbe14120609018b.tar.bz2 |
Fix String.toLowerCase and toUpperCase.
Rather than try to cope with Lithuanian, let's just hand that one to ICU4C.
I've removed my hand-crafted Azeri/Turkish lowercasing too, in favor of ICU.
Presence of a high surrogate (which implies a supplemental character) is a
good reason to hand over to ICU too.
On the uppercasing side, I've kept our existing hard-coded table and just
added code to defer to ICU for Azeri, Lithuanian, and Turkish (plus
supplemental characters). I don't like the tables, but I don't have proof
that they're incorrect.
Bug: 2340628
Change-Id: I36b556b0444623a5aacc1afc58ebb4d84211d3dc
Diffstat (limited to 'icu/src/main/java')
-rw-r--r-- | icu/src/main/java/com/ibm/icu4jni/lang/UCharacter.java | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/icu/src/main/java/com/ibm/icu4jni/lang/UCharacter.java b/icu/src/main/java/com/ibm/icu4jni/lang/UCharacter.java index dc351f4..08fe26a 100644 --- a/icu/src/main/java/com/ibm/icu4jni/lang/UCharacter.java +++ b/icu/src/main/java/com/ibm/icu4jni/lang/UCharacter.java @@ -42,6 +42,8 @@ public final class UCharacter { public static native int toLowerCase(int codePoint); public static native int toTitleCase(int codePoint); public static native int toUpperCase(int codePoint); + public static native String toLowerCase(String s, String localeName); + public static native String toUpperCase(String s, String localeName); public static UnicodeBlock[] getBlockTable() { /** |