19 #if !UCONFIG_NO_COLLATION
30 #define KEY_BUFFER_SIZE 64
36 #define CELIST_BUFFER_SIZE 4
50 #define STRING_LIST_BUFFER_SIZE 16
108 uint32_t
get(int32_t index)
const;
121 UBool matchesAt(int32_t offset,
const CEList *other)
const;
132 uint32_t &operator[](int32_t index)
const;
153 #ifdef INSTRUMENT_CELIST
154 static int32_t _active;
155 static int32_t _histogram[10];
229 int32_t size()
const;
247 #ifdef INSTRUMENT_STRING_LIST
248 static int32_t _lists;
249 static int32_t _strings;
250 static int32_t _histogram[101];
257 class StringToCEsMap;
258 class CEToStringsMap;
306 static void close(
CollData *collData);
328 const StringList *getStringList(int32_t ce)
const;
350 void freeCEList(
const CEList *list);
363 int32_t minLengthInChars(
const CEList *ces, int32_t offset)
const;
385 int32_t minLengthInChars(
const CEList *ces, int32_t offset, int32_t *history)
const;
410 static void freeCollDataCache();
419 static void flushCollDataCache();
422 friend class CollDataCache;
423 friend class CollDataCacheEntry;
430 static char *getCollatorKey(
UCollator *collator,
char *buffer, int32_t bufferLength);
432 static CollDataCache *getCollDataCache();
435 StringToCEsMap *charsToCEList;
436 CEToStringsMap *ceToCharsStartingWith;
441 static CollDataCache *collDataCache;
446 uint32_t jamoLimits[4];
451 #endif // #if !UCONFIG_NO_COLLATION
452 #endif // #ifndef COLL_DATA_H