ICU 50.1.2  50.1.2
ucoleitr.h
Go to the documentation of this file.
1 /*
2 *******************************************************************************
3 * Copyright (C) 2001-2011, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 *******************************************************************************
6 *
7 * File ucoleitr.cpp
8 *
9 * Modification History:
10 *
11 * Date Name Description
12 * 02/15/2001 synwee Modified all methods to process its own function
13 * instead of calling the equivalent c++ api (coleitr.h)
14 *******************************************************************************/
15 
16 #ifndef UCOLEITR_H
17 #define UCOLEITR_H
18 
19 #include "unicode/utypes.h"
20 
21 #if !UCONFIG_NO_COLLATION
22 
28 #define UCOL_NULLORDER ((int32_t)0xFFFFFFFF)
29 
30 #ifndef U_HIDE_INTERNAL_API
31 
37 #define UCOL_PROCESSED_NULLORDER ((int64_t)U_INT64_MAX)
38 #endif /* U_HIDE_INTERNAL_API */
39 
40 #include "unicode/ucol.h"
41 
48 
120 U_STABLE UCollationElements* U_EXPORT2
121 ucol_openElements(const UCollator *coll,
122  const UChar *text,
123  int32_t textLength,
124  UErrorCode *status);
125 
126 
134 U_STABLE int32_t U_EXPORT2
135 ucol_keyHashCode(const uint8_t* key, int32_t length);
136 
143 U_STABLE void U_EXPORT2
145 
155 U_STABLE void U_EXPORT2
157 
158 #ifndef U_HIDE_INTERNAL_API
159 
170 U_INTERNAL void U_EXPORT2
172 #endif /* U_HIDE_INTERNAL_API */
173 
183 U_STABLE int32_t U_EXPORT2
184 ucol_next(UCollationElements *elems, UErrorCode *status);
185 
202 U_STABLE int32_t U_EXPORT2
204 
205 #ifndef U_HIDE_INTERNAL_API
206 
219 U_INTERNAL int64_t U_EXPORT2
220 ucol_nextProcessed(UCollationElements *elems, int32_t *ixLow, int32_t *ixHigh, UErrorCode *status);
221 
242 U_INTERNAL int64_t U_EXPORT2
243 ucol_previousProcessed(UCollationElements *elems, int32_t *ixLow, int32_t *ixHigh, UErrorCode *status);
244 #endif /* U_HIDE_INTERNAL_API */
245 
257 U_STABLE int32_t U_EXPORT2
258 ucol_getMaxExpansion(const UCollationElements *elems, int32_t order);
259 
272 U_STABLE void U_EXPORT2
274  const UChar *text,
275  int32_t textLength,
276  UErrorCode *status);
277 
287 U_STABLE int32_t U_EXPORT2
288 ucol_getOffset(const UCollationElements *elems);
289 
302 U_STABLE void U_EXPORT2
304  int32_t offset,
305  UErrorCode *status);
306 
313 U_STABLE int32_t U_EXPORT2
314 ucol_primaryOrder (int32_t order);
315 
322 U_STABLE int32_t U_EXPORT2
323 ucol_secondaryOrder (int32_t order);
324 
331 U_STABLE int32_t U_EXPORT2
332 ucol_tertiaryOrder (int32_t order);
333 
334 #endif /* #if !UCONFIG_NO_COLLATION */
335 
336 #endif
int32_t ucol_tertiaryOrder(int32_t order)
Get the tertiary order of a collation order.
UCollationElements * ucol_openElements(const UCollator *coll, const UChar *text, int32_t textLength, UErrorCode *status)
Open the collation elements for a string.
int32_t ucol_secondaryOrder(int32_t order)
Get the secondary order of a collation order.
#define U_INTERNAL
This is used to declare a function as an internal ICU C API.
Definition: umachine.h:117
int32_t ucol_previous(UCollationElements *elems, UErrorCode *status)
Get the ordering priority of the previous collation element in the text.
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...
int32_t ucol_keyHashCode(const uint8_t *key, int32_t length)
get a hash code for a key...
struct UCollationElements UCollationElements
File coleitr.h.
Definition: coleitr.h:49
int64_t ucol_previousProcessed(UCollationElements *elems, int32_t *ixLow, int32_t *ixHigh, UErrorCode *status)
Get the processed ordering priority of the previous collation element in the text.
void ucol_setText(UCollationElements *elems, const UChar *text, int32_t textLength, UErrorCode *status)
Set the text containing the collation elements.
C API: Collator.
int32_t ucol_next(UCollationElements *elems, UErrorCode *status)
Get the ordering priority of the next collation element in the text.
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
Definition: umachine.h:278
void ucol_closeElements(UCollationElements *elems)
Close a UCollationElements.
void ucol_setOffset(UCollationElements *elems, int32_t offset, UErrorCode *status)
Set the offset of the current source character.
int64_t ucol_nextProcessed(UCollationElements *elems, int32_t *ixLow, int32_t *ixHigh, UErrorCode *status)
Get the processed ordering priority of the next collation element in the text.
void ucol_reset(UCollationElements *elems)
Reset the collation elements to their initial state.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
struct UCollator UCollator
structure representing a collator object instance
Definition: ucol.h:62
Basic definitions for ICU, for both C and C++ APIs.
int32_t ucol_getOffset(const UCollationElements *elems)
Get the offset of the current source character.
int32_t ucol_primaryOrder(int32_t order)
Get the primary order of a collation order.
void ucol_forceHanImplicit(UCollationElements *elems, UErrorCode *status)
Set the collation elements to use implicit ordering for Han even if they've been tailored.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition: umachine.h:109