Go to the documentation of this file.
17 #if !UCONFIG_NO_COLLATION
75 class RuleBasedCollator;
76 class StringEnumeration;
221 friend class BucketList;
227 int32_t displayIndex_;
259 int32_t getBucketCount()
const;
278 const Bucket *getBucket(int32_t index)
const;
284 : buckets_(bucketList), collatorPrimaryOnly_(collatorPrimaryOnly) {}
286 BucketList *buckets_;
449 virtual int32_t getMaxLabelCount()
const;
503 virtual int32_t getBucketCount(
UErrorCode &status);
514 virtual int32_t getRecordCount(
UErrorCode &status);
539 virtual int32_t getBucketIndex()
const;
582 virtual int32_t getBucketRecordCount()
const;
627 virtual const void *getRecordData()
const;
675 UVector *firstStringsInScript(
UErrorCode &status);
684 void initLabels(UVector &indexCharacters,
UErrorCode &errorCode)
const;
685 BucketList *createBucketList(
UErrorCode &errorCode)
const;
688 void internalResetBucketIterator();
696 #ifndef U_HIDE_INTERNAL_API
719 int32_t labelsIterIndex_;
720 int32_t itemsIterIndex_;
725 int32_t maxLabelCount_;
732 UVector *firstCharsInScripts_;
739 BucketList *buckets_;
751 #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.