ICU 4.8.1.1
4.8.1.1
|
00001 /* 00002 ******************************************************************************* 00003 * 00004 * Copyright (C) 2005-2010, International Business Machines 00005 * Corporation and others. All Rights Reserved. 00006 * 00007 ******************************************************************************* 00008 * file name: ucasemap.h 00009 * encoding: US-ASCII 00010 * tab size: 8 (not used) 00011 * indentation:4 00012 * 00013 * created on: 2005may06 00014 * created by: Markus W. Scherer 00015 * 00016 * Case mapping service object and functions using it. 00017 */ 00018 00019 #ifndef __UCASEMAP_H__ 00020 #define __UCASEMAP_H__ 00021 00022 #include "unicode/utypes.h" 00023 #include "unicode/ustring.h" 00024 #include "unicode/localpointer.h" 00025 00044 struct UCaseMap; 00045 typedef struct UCaseMap UCaseMap; 00069 U_STABLE UCaseMap * U_EXPORT2 00070 ucasemap_open(const char *locale, uint32_t options, UErrorCode *pErrorCode); 00071 00077 U_STABLE void U_EXPORT2 00078 ucasemap_close(UCaseMap *csm); 00079 00080 #if U_SHOW_CPLUSPLUS_API 00081 00082 U_NAMESPACE_BEGIN 00083 00093 U_DEFINE_LOCAL_OPEN_POINTER(LocalUCaseMapPointer, UCaseMap, ucasemap_close); 00094 00095 U_NAMESPACE_END 00096 00097 #endif 00098 00105 U_STABLE const char * U_EXPORT2 00106 ucasemap_getLocale(const UCaseMap *csm); 00107 00114 U_STABLE uint32_t U_EXPORT2 00115 ucasemap_getOptions(const UCaseMap *csm); 00116 00128 U_STABLE void U_EXPORT2 00129 ucasemap_setLocale(UCaseMap *csm, const char *locale, UErrorCode *pErrorCode); 00130 00142 U_STABLE void U_EXPORT2 00143 ucasemap_setOptions(UCaseMap *csm, uint32_t options, UErrorCode *pErrorCode); 00144 00159 #define U_TITLECASE_NO_LOWERCASE 0x100 00160 00184 #define U_TITLECASE_NO_BREAK_ADJUSTMENT 0x200 00185 00186 #if !UCONFIG_NO_BREAK_ITERATION 00187 00195 U_STABLE const UBreakIterator * U_EXPORT2 00196 ucasemap_getBreakIterator(const UCaseMap *csm); 00197 00218 U_STABLE void U_EXPORT2 00219 ucasemap_setBreakIterator(UCaseMap *csm, UBreakIterator *iterToAdopt, UErrorCode *pErrorCode); 00220 00267 U_STABLE int32_t U_EXPORT2 00268 ucasemap_toTitle(UCaseMap *csm, 00269 UChar *dest, int32_t destCapacity, 00270 const UChar *src, int32_t srcLength, 00271 UErrorCode *pErrorCode); 00272 00273 #endif 00274 00298 U_STABLE int32_t U_EXPORT2 00299 ucasemap_utf8ToLower(const UCaseMap *csm, 00300 char *dest, int32_t destCapacity, 00301 const char *src, int32_t srcLength, 00302 UErrorCode *pErrorCode); 00303 00327 U_STABLE int32_t U_EXPORT2 00328 ucasemap_utf8ToUpper(const UCaseMap *csm, 00329 char *dest, int32_t destCapacity, 00330 const char *src, int32_t srcLength, 00331 UErrorCode *pErrorCode); 00332 00333 #if !UCONFIG_NO_BREAK_ITERATION 00334 00379 U_STABLE int32_t U_EXPORT2 00380 ucasemap_utf8ToTitle(UCaseMap *csm, 00381 char *dest, int32_t destCapacity, 00382 const char *src, int32_t srcLength, 00383 UErrorCode *pErrorCode); 00384 00385 #endif 00386 00415 U_STABLE int32_t U_EXPORT2 00416 ucasemap_utf8FoldCase(const UCaseMap *csm, 00417 char *dest, int32_t destCapacity, 00418 const char *src, int32_t srcLength, 00419 UErrorCode *pErrorCode); 00420 00421 #endif