mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-21 12:40:02 +00:00
ICU-7273 small simplification, and avoid compiler warnings from getNorm16FromBMP() like >>comparison is always true due to limited range of data type<<
X-SVN-Rev: 27326
This commit is contained in:
parent
800a8a951c
commit
c82f884457
2 changed files with 7 additions and 20 deletions
|
@ -197,20 +197,17 @@ uint8_t ReorderingBuffer::previousCC() {
|
|||
if(reorderStart>=codePointStart) {
|
||||
return 0;
|
||||
}
|
||||
UChar c=*--codePointStart;
|
||||
UChar32 c=*--codePointStart;
|
||||
if(c<Normalizer2Impl::MIN_CCC_LCCC_CP) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
UChar c2;
|
||||
uint16_t norm16;
|
||||
if(U16_IS_TRAIL(c) && start<codePointStart && U16_IS_LEAD(c2=*(codePointStart-1))) {
|
||||
--codePointStart;
|
||||
norm16=impl.getNorm16FromSurrogatePair(c2, c);
|
||||
} else {
|
||||
norm16=impl.getNorm16FromBMP(c);
|
||||
c=U16_GET_SUPPLEMENTARY(c2, c);
|
||||
}
|
||||
return Normalizer2Impl::getCCFromYesOrMaybe(norm16);
|
||||
return Normalizer2Impl::getCCFromYesOrMaybe(impl.getNorm16(c));
|
||||
}
|
||||
|
||||
// Inserts c somewhere before the last character.
|
||||
|
@ -299,12 +296,13 @@ Normalizer2Impl::load(const char *packageName, const char *name, UErrorCode &err
|
|||
}
|
||||
|
||||
uint8_t Normalizer2Impl::getTrailCCFromCompYesAndZeroCC(const UChar *cpStart, const UChar *cpLimit) const {
|
||||
uint16_t prevNorm16;
|
||||
UChar32 c;
|
||||
if(cpStart==(cpLimit-1)) {
|
||||
prevNorm16=getNorm16FromBMP(*cpStart);
|
||||
c=*cpStart;
|
||||
} else {
|
||||
prevNorm16=getNorm16FromSurrogatePair(cpStart[0], cpStart[1]);
|
||||
c=U16_GET_SUPPLEMENTARY(cpStart[0], cpStart[1]);
|
||||
}
|
||||
uint16_t prevNorm16=getNorm16(c);
|
||||
if(prevNorm16<=minYesNo) {
|
||||
return 0; // yesYes and Hangul LV/LVT have ccc=tccc=0
|
||||
} else {
|
||||
|
|
|
@ -196,16 +196,6 @@ public:
|
|||
const UTrie2 *getFCDTrie(UErrorCode &errorCode) const ;
|
||||
|
||||
uint16_t getNorm16(UChar32 c) const { return UTRIE2_GET16(normTrie, c); }
|
||||
uint16_t getNorm16FromBMP(UChar c) const { return UTRIE2_GET16(normTrie, c); }
|
||||
uint16_t getNorm16FromSingleLead(UChar c) const {
|
||||
return UTRIE2_GET16_FROM_U16_SINGLE_LEAD(normTrie, c);
|
||||
}
|
||||
uint16_t getNorm16FromSupplementary(UChar32 c) const {
|
||||
return UTRIE2_GET16_FROM_SUPP(normTrie, c);
|
||||
}
|
||||
uint16_t getNorm16FromSurrogatePair(UChar c, UChar c2) const {
|
||||
return getNorm16FromSupplementary(U16_GET_SUPPLEMENTARY(c, c2));
|
||||
}
|
||||
|
||||
UNormalizationCheckResult getCompQuickCheck(uint16_t norm16) const {
|
||||
if(norm16<minNoNo || MIN_YES_YES_WITH_CC<=norm16) {
|
||||
|
@ -233,7 +223,6 @@ public:
|
|||
}
|
||||
|
||||
uint16_t getFCD16(UChar32 c) const { return UTRIE2_GET16(fcdTrie(), c); }
|
||||
uint16_t getFCD16FromBMP(UChar c) const { return UTRIE2_GET16(fcdTrie(), c); }
|
||||
uint16_t getFCD16FromSingleLead(UChar c) const {
|
||||
return UTRIE2_GET16_FROM_U16_SINGLE_LEAD(fcdTrie(), c);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue