17 #if U_SHOW_CPLUSPLUS_API 23 #if !UCONFIG_NO_COLLATION 81 class RuleBasedCollator;
82 class StringEnumeration;
227 friend class BucketList;
233 int32_t displayIndex_;
265 int32_t getBucketCount()
const;
286 const Bucket *getBucket(int32_t index)
const;
292 : buckets_(bucketList), collatorPrimaryOnly_(collatorPrimaryOnly) {}
294 BucketList *buckets_;
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 712 struct Record:
public UMemory {
730 int32_t labelsIterIndex_;
731 int32_t itemsIterIndex_;
736 int32_t maxLabelCount_;
743 UVector *firstCharsInScripts_;
750 BucketList *buckets_;
762 #endif // !UCONFIG_NO_COLLATION struct UHashtable UHashtable
The Collator class performs locale-sensitive string comparison.
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.
The RuleBasedCollator class provides the implementation of Collator, using data-driven tables...
UAlphabeticIndexLabelType getLabelType() const
Returns whether this bucket is a normal, underflow, overflow, or inflow bucket.
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.
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.
AlphabeticIndex supports the creation of a UI index appropriate for a given language.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
C++ API: Locale ID object.
Basic definitions for ICU, for both C and C++ APIs.
const UnicodeString & getLabel() const
Returns the label string.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
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.