ICU 63.1 63.1

ucpmap.h
Go to the documentation of this file.
1 // © 2018 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3
4 // ucpmap.h
5 // created: 2018sep03 Markus W. Scherer
6
7 #ifndef __UCPMAP_H__
8 #define __UCPMAP_H__
9
10 #include "unicode/utypes.h"
11
12 #ifndef U_HIDE_DRAFT_API
13
14 U_CDECL_BEGIN
15
33 typedef struct UCPMap UCPMap;
34
44 enum UCPMapRangeOption {
50 UCPMAP_RANGE_NORMAL,
66 UCPMAP_RANGE_FIXED_LEAD_SURROGATES,
82 UCPMAP_RANGE_FIXED_ALL_SURROGATES
83 };
84 #ifndef U_IN_DOXYGEN
85 typedef enum UCPMapRangeOption UCPMapRangeOption;
86 #endif
87
98 U_CAPI uint32_t U_EXPORT2
99 ucpmap_get(const UCPMap *map, UChar32 c);
100
115 typedef uint32_t U_CALLCONV
116 UCPMapValueFilter(const void *context, uint32_t value);
117
154 U_CAPI UChar32 U_EXPORT2
155 ucpmap_getRange(const UCPMap *map, UChar32 start,
156 UCPMapRangeOption option, uint32_t surrogateValue,
157 UCPMapValueFilter *filter, const void *context, uint32_t *pValue);
158
159 U_CDECL_END
160
161 #endif // U_HIDE_DRAFT_API
162 #endif
UCPMapRangeOption
UCPMapRangeOption
Selectors for how ucpmap_getRange() etc.
Definition: ucpmap.h:44
ucpmap_get
U_CAPI uint32_t ucpmap_get(const UCPMap *map, UChar32 c)
Returns the value for a code point as stored in the map, with range checking.
ucpmap_getRange
U_CAPI UChar32 ucpmap_getRange(const UCPMap *map, UChar32 start, UCPMapRangeOption option, uint32_t surrogateValue, UCPMapValueFilter *filter, const void *context, uint32_t *pValue)
Returns the last code point such that all those from start to there have the same value...
UCPMap
struct UCPMap UCPMap
Abstract map from Unicode code points (U+0000..U+10FFFF) to integer values.
Definition: ucpmap.h:33
U_CAPI
#define U_CAPI
This is used to declare a function as a public ICU C API.
Definition: umachine.h:109
UCPMAP_RANGE_NORMAL
ucpmap_getRange() enumerates all same-value ranges as stored in the map.
Definition: ucpmap.h:50
U_CALLCONV
#define U_CALLCONV
Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function typedefs to ma...
Definition: platform.h:840
U_CDECL_BEGIN
#define U_CDECL_BEGIN
This is used to begin a declaration of a library private ICU C API.
Definition: umachine.h:84
UCPMAP_RANGE_FIXED_LEAD_SURROGATES
ucpmap_getRange() enumerates all same-value ranges as stored in the map, except that lead surrogates ...
Definition: ucpmap.h:66
UCPMapValueFilter
uint32_t UCPMapValueFilter(const void *context, uint32_t value)
Callback function type: Modifies a map value.
Definition: ucpmap.h:116
UChar32
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition: umachine.h:389
U_CDECL_END
#define U_CDECL_END
This is used to end a declaration of a library private ICU C API.
Definition: umachine.h:85
UCPMAP_RANGE_FIXED_ALL_SURROGATES
ucpmap_getRange() enumerates all same-value ranges as stored in the map, except that all surrogates (...
Definition: ucpmap.h:82
utypes.h
Basic definitions for ICU, for both C and C++ APIs.