38 #if !UCONFIG_NO_COLLATION
130 NULLORDER = (int32_t)0xffffffff
199 static inline int32_t primaryOrder(int32_t order);
207 static inline int32_t secondaryOrder(int32_t order);
215 static inline int32_t tertiaryOrder(int32_t order);
226 int32_t getMaxExpansion(int32_t order)
const;
234 int32_t strengthOrder(int32_t order)
const;
258 static inline UBool isIgnorable(int32_t order);
265 int32_t getOffset(
void)
const;
274 void setOffset(int32_t newOffset,
UErrorCode& status);
288 static UClassID U_EXPORT2 getStaticClassID();
361 order &= RuleBasedCollator::PRIMARYORDERMASK;
362 return (order >> RuleBasedCollator::PRIMARYORDERSHIFT);
372 order = order & RuleBasedCollator::SECONDARYORDERMASK;
373 return (order >> RuleBasedCollator::SECONDARYORDERSHIFT);
383 return (order &= RuleBasedCollator::TERTIARYORDERMASK);
393 return (primaryOrder(order) == RuleBasedCollator::PRIMIGNORABLE);
virtual UClassID getDynamicClassID() const =0
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
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.
int32_t ucol_getMaxExpansion(const UCollationElements *elems, int32_t order)
Get the maximum length of any expansion sequences that end with the specified comparison order...
C++ API: RuleBasedCollator class provides the simple implementation of Collator.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
struct UCollationElements UCollationElements
File coleitr.h.
static int32_t secondaryOrder(int32_t order)
Gets the secondary order of a collation order.
#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...
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.
C API: UCollationElements.
The CollationElementIterator class is used as an iterator to walk through each character of an intern...
C++ API: Common ICU base class UObject.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Basic definitions for ICU, for both C and C++ APIs.
int32_t getMaxExpansion(int32_t order) const
Return the maximum length of any expansion sequences that end with the specified comparison order...
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.