38 #if U_SHOW_CPLUSPLUS_API 40 #if !UCONFIG_NO_COLLATION 52 class CharacterIterator;
53 class CollationIterator;
54 class RuleBasedCollator;
131 NULLORDER = (int32_t)0xffffffff
200 static inline int32_t primaryOrder(int32_t order);
208 static inline int32_t secondaryOrder(int32_t order);
216 static inline int32_t tertiaryOrder(int32_t order);
227 int32_t getMaxExpansion(int32_t order)
const;
235 int32_t strengthOrder(int32_t order)
const;
259 static inline UBool isIgnorable(int32_t order);
266 int32_t getOffset(
void)
const;
275 void setOffset(int32_t newOffset,
UErrorCode& status);
289 static UClassID U_EXPORT2 getStaticClassID();
291 #ifndef U_HIDE_INTERNAL_API 308 #endif // U_HIDE_INTERNAL_API 312 friend class UCollationPCE;
357 inline int8_t normalizeDir()
const {
return dir_ == 1 ? 0 : dir_; }
361 static int32_t getMaxExpansion(
const UHashtable *maxExpansions, int32_t order);
365 CollationIterator *iter_;
387 return (order >> 16) & 0xffff;
392 return (order >> 8) & 0xff;
402 return (order & 0xffff0000) == 0;
struct UHashtable UHashtable
static CollationElementIterator * fromUCollationElements(UCollationElements *uc)
const UCollationElements * toUCollationElements() const
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
static int32_t primaryOrder(int32_t order)
Gets the primary order of a collation order.
struct UCollationElements UCollationElements
The UCollationElements struct.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
static int32_t secondaryOrder(int32_t order)
Gets the secondary order of a collation order.
The RuleBasedCollator class provides the implementation of Collator, using data-driven tables...
static const CollationElementIterator * fromUCollationElements(const UCollationElements *uc)
Abstract class that defines an API for iteration on text objects.
static int32_t tertiaryOrder(int32_t order)
Gets the tertiary order of a collation order.
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
The CollationElementIterator class is used as an iterator to walk through each character of an intern...
virtual UClassID getDynamicClassID() const
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
UCollationElements * toUCollationElements()
C++ API: Common ICU base class UObject.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
#define U_FINAL
Defined to the C++11 "final" keyword if available.
Basic definitions for ICU, for both C and C++ APIs.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
UObject is the common ICU "boilerplate" class.
int8_t UBool
The ICU boolean type.
static UBool isIgnorable(int32_t order)
Checks if a comparison order is ignorable.