|
ICU 73.2
73.2
|
00001 // © 2017 and later: Unicode, Inc. and others. 00002 // License & terms of use: http://www.unicode.org/copyright.html 00003 00004 // umutablecptrie.h (split out of ucptrie.h) 00005 // created: 2018jan24 Markus W. Scherer 00006 00007 #ifndef __UMUTABLECPTRIE_H__ 00008 #define __UMUTABLECPTRIE_H__ 00009 00010 #include "unicode/utypes.h" 00011 00012 #include "unicode/ucpmap.h" 00013 #include "unicode/ucptrie.h" 00014 #include "unicode/utf8.h" 00015 00016 #if U_SHOW_CPLUSPLUS_API 00017 #include "unicode/localpointer.h" 00018 #endif // U_SHOW_CPLUSPLUS_API 00019 00020 U_CDECL_BEGIN 00021 00049 typedef struct UMutableCPTrie UMutableCPTrie; 00050 00064 U_CAPI UMutableCPTrie * U_EXPORT2 00065 umutablecptrie_open(uint32_t initialValue, uint32_t errorValue, UErrorCode *pErrorCode); 00066 00076 U_CAPI UMutableCPTrie * U_EXPORT2 00077 umutablecptrie_clone(const UMutableCPTrie *other, UErrorCode *pErrorCode); 00078 00085 U_CAPI void U_EXPORT2 00086 umutablecptrie_close(UMutableCPTrie *trie); 00087 00097 U_CAPI UMutableCPTrie * U_EXPORT2 00098 umutablecptrie_fromUCPMap(const UCPMap *map, UErrorCode *pErrorCode); 00099 00109 U_CAPI UMutableCPTrie * U_EXPORT2 00110 umutablecptrie_fromUCPTrie(const UCPTrie *trie, UErrorCode *pErrorCode); 00111 00120 U_CAPI uint32_t U_EXPORT2 00121 umutablecptrie_get(const UMutableCPTrie *trie, UChar32 c); 00122 00152 U_CAPI UChar32 U_EXPORT2 00153 umutablecptrie_getRange(const UMutableCPTrie *trie, UChar32 start, 00154 UCPMapRangeOption option, uint32_t surrogateValue, 00155 UCPMapValueFilter *filter, const void *context, uint32_t *pValue); 00156 00166 U_CAPI void U_EXPORT2 00167 umutablecptrie_set(UMutableCPTrie *trie, UChar32 c, uint32_t value, UErrorCode *pErrorCode); 00168 00180 U_CAPI void U_EXPORT2 00181 umutablecptrie_setRange(UMutableCPTrie *trie, 00182 UChar32 start, UChar32 end, 00183 uint32_t value, UErrorCode *pErrorCode); 00184 00215 U_CAPI UCPTrie * U_EXPORT2 00216 umutablecptrie_buildImmutable(UMutableCPTrie *trie, UCPTrieType type, UCPTrieValueWidth valueWidth, 00217 UErrorCode *pErrorCode); 00218 00219 U_CDECL_END 00220 00221 #if U_SHOW_CPLUSPLUS_API 00222 00223 U_NAMESPACE_BEGIN 00224 00234 U_DEFINE_LOCAL_OPEN_POINTER(LocalUMutableCPTriePointer, UMutableCPTrie, umutablecptrie_close); 00235 00236 U_NAMESPACE_END 00237 00238 #endif 00239 00240 #endif
1.7.6.1