ICU 67.1 67.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 U_CDECL_BEGIN
13
31 typedef struct UCPMap UCPMap;
32
42 enum UCPMapRangeOption {
48 UCPMAP_RANGE_NORMAL,
64 UCPMAP_RANGE_FIXED_LEAD_SURROGATES,
80 UCPMAP_RANGE_FIXED_ALL_SURROGATES
81 };
82 #ifndef U_IN_DOXYGEN
83 typedef enum UCPMapRangeOption UCPMapRangeOption;
84 #endif
85
96 U_CAPI uint32_t U_EXPORT2
97 ucpmap_get(const UCPMap *map, UChar32 c);
98
113 typedef uint32_t U_CALLCONV
114 UCPMapValueFilter(const void *context, uint32_t value);
115
152 U_CAPI UChar32 U_EXPORT2
153 ucpmap_getRange(const UCPMap *map, UChar32 start,
154 UCPMapRangeOption option, uint32_t surrogateValue,
155 UCPMapValueFilter *filter, const void *context, uint32_t *pValue);
156
157 U_CDECL_END
158
159 #endif
UCPMapRangeOption
UCPMapRangeOption
Selectors for how ucpmap_getRange() etc.
Definition: ucpmap.h:42
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:31
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:48
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:870
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:64
UCPMapValueFilter
uint32_t UCPMapValueFilter(const void *context, uint32_t value)
Callback function type: Modifies a map value.
Definition: ucpmap.h:114
UChar32
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition: umachine.h:425
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:80
utypes.h
Basic definitions for ICU, for both C and C++ APIs.