55 #if !UCONFIG_NO_COLLATION
68 class StringEnumeration;
70 #if !UCONFIG_NO_SERVICE
74 class CollatorFactory;
263 virtual Collator* clone(
void)
const = 0;
332 virtual EComparisonResult compare(
const UnicodeString& source,
363 virtual EComparisonResult compare(
const UnicodeString& source,
365 int32_t length)
const;
418 virtual EComparisonResult compare(
const UChar* source, int32_t sourceLength,
419 const UChar* target, int32_t targetLength)
439 const UChar* target, int32_t targetLength,
516 int32_t sourceLength,
523 virtual int32_t hashCode(
void)
const = 0;
584 virtual ECollationStrength getStrength(
void)
const;
604 virtual void setStrength(ECollationStrength newStrength);
621 virtual int32_t getReorderCodes(int32_t *dest,
622 int32_t destCapacity,
639 virtual void setReorderCodes(
const int32_t* reorderCodes,
640 int32_t reorderCodesLength,
661 static int32_t U_EXPORT2 getEquivalentReorderCodes(int32_t reorderCode,
663 int32_t destCapacity,
676 const Locale& displayLocale,
701 static const Locale* U_EXPORT2 getAvailableLocales(int32_t& count);
783 static Locale U_EXPORT2 getFunctionalEquivalent(
const char* keyword,
const Locale& locale,
786 #if !UCONFIG_NO_SERVICE
916 virtual uint32_t setVariableTop(
const UChar *varTop, int32_t len,
UErrorCode &status) = 0;
946 virtual void setVariableTop(uint32_t varTop,
UErrorCode &status) = 0;
955 virtual uint32_t getVariableTop(
UErrorCode &status)
const = 0;
975 virtual Collator* safeClone(
void)
const;
995 int32_t resultLength)
const = 0;
1016 virtual int32_t getSortKey(
const UChar*source, int32_t sourceLength,
1017 uint8_t*result, int32_t resultLength)
const = 0;
1056 static int32_t U_EXPORT2 getBound(
const uint8_t *source,
1057 int32_t sourceLength,
1059 uint32_t noOfLevels,
1061 int32_t resultLength,
1078 #ifndef U_HIDE_DEPRECATED_API
1109 virtual void setLocales(
const Locale& requestedLocale,
const Locale& validLocale,
const Locale& actualLocale);
1134 virtual int32_t internalGetShortDefinitionString(
const char *locale,
1144 const char *left, int32_t leftLength,
1145 const char *right, int32_t rightLength,
1153 internalNextSortKeyPart(
1155 uint8_t *dest, int32_t count,
UErrorCode &errorCode)
const;
1157 #ifndef U_HIDE_INTERNAL_API
1160 return reinterpret_cast<Collator *
>(uc);
1164 return reinterpret_cast<const Collator *
>(uc);
1168 return reinterpret_cast<UCollator *
>(
this);
1172 return reinterpret_cast<const UCollator *
>(
this);
1174 #endif // U_HIDE_INTERNAL_API
1182 friend class CFactory;
1183 friend class SimpleCFactory;
1184 friend class ICUCollatorFactory;
1185 friend class ICUCollatorService;
1190 #if !UCONFIG_NO_SERVICE
1223 virtual UBool visible(
void)
const;
1245 const Locale& displayLocale,