Go to the documentation of this file.
20 #if !UCONFIG_NO_COLLATION
78 class RuleBasedCollator;
79 class StringEnumeration;
224 friend class BucketList;
230 int32_t displayIndex_;
262 int32_t getBucketCount()
const;
281 const Bucket *getBucket(int32_t index)
const;
287 : buckets_(bucketList), collatorPrimaryOnly_(collatorPrimaryOnly) {}
289 BucketList *buckets_;
452 virtual int32_t getMaxLabelCount()
const;
506 virtual int32_t getBucketCount(
UErrorCode &status);
517 virtual int32_t getRecordCount(
UErrorCode &status);
542 virtual int32_t getBucketIndex()
const;
585 virtual int32_t getBucketRecordCount()
const;
630 virtual const void *getRecordData()
const;
678 UVector *firstStringsInScript(
UErrorCode &status);
687 void initLabels(UVector &indexCharacters,
UErrorCode &errorCode)
const;
688 BucketList *createBucketList(
UErrorCode &errorCode)
const;
691 void internalResetBucketIterator();
699 #ifndef U_HIDE_INTERNAL_API
722 int32_t labelsIterIndex_;
723 int32_t itemsIterIndex_;
728 int32_t maxLabelCount_;
735 UVector *firstCharsInScripts_;
742 BucketList *buckets_;
754 #endif // !UCONFIG_NO_COLLATION
UAlphabeticIndexLabelType getLabelType() const
Returns whether this bucket is a normal, underflow, overflow, or inflow bucket.
const UnicodeString & getLabel() const
Returns the label string.
Basic definitions for ICU, for both C and C++ APIs.
A mutable set of Unicode characters and multicharacter strings.
UAlphabeticIndexLabelType
Constants for Alphabetic Index Label Types.
int8_t UBool
The ICU boolean type.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
The Collator class performs locale-sensitive string comparison.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
UObject is the common ICU "boilerplate" class.
@ U_ALPHAINDEX_NORMAL
Normal Label, typically the starting letter of the names in the bucket with this label.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers,...
UMemory is the common ICU base class.
The RuleBasedCollator class provides the implementation of Collator, using data-driven tables.
@ U_ALPHAINDEX_INFLOW
Inflow Label.
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
Immutable, thread-safe version of AlphabeticIndex.
@ U_ALPHAINDEX_OVERFLOW
Overflow Label.
@ U_ALPHAINDEX_UNDERFLOW
Undeflow Label.
A (name, data) pair, to be sorted by name into one of the index buckets.
C++ API: Locale ID object.
C++ API: Common ICU base class UObject.
AlphabeticIndex supports the creation of a UI index appropriate for a given language.
#define U_NAMESPACE_BEGIN
A Locale object represents a specific geographical, political, or cultural region.
An index "bucket" with a label string and type.