54 #if !UCONFIG_NO_COLLATION
69 #if !UCONFIG_NO_SERVICE
264 virtual Collator* clone(
void)
const = 0;
312 #ifdef U_USE_COLLATION_OBSOLETE_2_6
350 virtual EComparisonResult compare(
const UnicodeString& source,
381 virtual EComparisonResult compare(
const UnicodeString& source,
383 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,
510 int32_t sourceLength,
517 virtual int32_t hashCode(
void)
const = 0;
578 virtual ECollationStrength getStrength(
void)
const = 0;
598 virtual void setStrength(ECollationStrength newStrength) = 0;
613 virtual int32_t
U_EXPORT2 getReorderCodes(int32_t *dest,
614 int32_t destCapacity,
627 virtual void U_EXPORT2 setReorderCodes(
const int32_t* reorderCodes,
628 int32_t reorderCodesLength,
647 static int32_t
U_EXPORT2 getEquivalentReorderCodes(int32_t reorderCode,
649 int32_t destCapacity,
662 const Locale& displayLocale,
772 #if !UCONFIG_NO_SERVICE
856 virtual uint32_t setVariableTop(
const UChar *varTop, int32_t len,
UErrorCode &status) = 0;
876 virtual void setVariableTop(
const uint32_t varTop,
UErrorCode &status) = 0;
884 virtual uint32_t getVariableTop(
UErrorCode &status)
const = 0;
903 virtual Collator* safeClone(
void) = 0;
919 int32_t resultLength)
const = 0;
936 virtual int32_t getSortKey(
const UChar*source, int32_t sourceLength,
937 uint8_t*result, int32_t resultLength)
const = 0;
976 static int32_t
U_EXPORT2 getBound(
const uint8_t *source,
977 int32_t sourceLength,
981 int32_t resultLength,
1029 virtual void setLocales(
const Locale& requestedLocale,
const Locale& validLocale,
const Locale& actualLocale);
1032 #if !UCONFIG_NO_SERVICE
1046 friend class CFactory;
1047 friend class SimpleCFactory;
1048 friend class ICUCollatorFactory;
1049 friend class ICUCollatorService;
1064 #if !UCONFIG_NO_SERVICE
1097 virtual UBool visible(
void)
const;
1119 const Locale& displayLocale,