18 #if !UCONFIG_NO_COLLATION && !UCONFIG_NO_NORMALIZATION
76 class RuleBasedCollator;
77 class StringEnumeration;
189 #ifdef U_HIDE_DRAFT_API
225 friend class BucketList;
231 int32_t displayIndex_;
263 int32_t getBucketCount()
const;
282 const Bucket *getBucket(int32_t index)
const;
288 : buckets_(bucketList), collatorPrimaryOnly_(collatorPrimaryOnly) {}
290 BucketList *buckets_;
309 #ifndef U_HIDE_DRAFT_API
360 #ifndef U_HIDE_DRAFT_API
458 virtual int32_t getMaxLabelCount()
const;
512 virtual int32_t getBucketCount(
UErrorCode &status);
523 virtual int32_t getRecordCount(
UErrorCode &status);
548 virtual int32_t getBucketIndex()
const;
591 virtual int32_t getBucketRecordCount()
const;
636 virtual const void *getRecordData()
const;
684 UVector *firstStringsInScript(
UErrorCode &status);
693 void initLabels(UVector &indexCharacters,
UErrorCode &errorCode)
const;
694 BucketList *createBucketList(
UErrorCode &errorCode)
const;
697 void internalResetBucketIterator();
705 #ifndef U_HIDE_INTERNAL_API
728 int32_t labelsIterIndex_;
729 int32_t itemsIterIndex_;
734 int32_t maxLabelCount_;
741 UVector *firstCharsInScripts_;
748 BucketList *buckets_;
The Collator class performs locale-sensitive string comparison.
const UnicodeString & getLabel() const
Returns the label string.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
Normal Label, typically the starting letter of the names in the bucket with this label.
#define U_CDECL_BEGIN
This is used to begin a declaration of a library private ICU C API.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
An index "bucket" with a label string and type.
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...
Immutable, thread-safe version of AlphabeticIndex.
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
A mutable set of Unicode characters and multicharacter strings.
A (name, data) pair, to be sorted by name into one of the index buckets.
C++ API: Common ICU base class UObject.
#define U_CDECL_END
This is used to end a declaration of a library private ICU C API.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
AlphabeticIndex supports the creation of a UI index appropriate for a given language.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
C++ API: Locale ID object.
Basic definitions for ICU, for both C and C++ APIs.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
UAlphabeticIndexLabelType getLabelType() const
Returns whether this bucket is a normal, underflow, overflow, or inflow bucket.
UObject is the common ICU "boilerplate" class.
UMemory is the common ICU base class.
int8_t UBool
The ICU boolean type.
A Locale object represents a specific geographical, political, or cultural region.
UAlphabeticIndexLabelType
Constants for Alphabetic Index Label Types.