michael@0: /* michael@0: ********************************************************************** michael@0: * Copyright (C) 2004-2010, International Business Machines michael@0: * Corporation and others. All Rights Reserved. michael@0: ********************************************************************** michael@0: */ michael@0: michael@0: #ifndef ULOCIMP_H michael@0: #define ULOCIMP_H michael@0: michael@0: #include "unicode/uloc.h" michael@0: michael@0: /** michael@0: * Create an iterator over the specified keywords list michael@0: * @param keywordList double-null terminated list. Will be copied. michael@0: * @param keywordListSize size in bytes of keywordList michael@0: * @param status err code michael@0: * @return enumeration (owned by caller) of the keyword list. michael@0: * @internal ICU 3.0 michael@0: */ michael@0: U_CAPI UEnumeration* U_EXPORT2 michael@0: uloc_openKeywordList(const char *keywordList, int32_t keywordListSize, UErrorCode* status); michael@0: michael@0: /** michael@0: * Look up a resource bundle table item with fallback on the table level. michael@0: * This is accessible so it can be called by C++ code. michael@0: */ michael@0: U_CAPI const UChar * U_EXPORT2 michael@0: uloc_getTableStringWithFallback( michael@0: const char *path, michael@0: const char *locale, michael@0: const char *tableKey, michael@0: const char *subTableKey, michael@0: const char *itemKey, michael@0: int32_t *pLength, michael@0: UErrorCode *pErrorCode); michael@0: michael@0: /*returns TRUE if a is an ID separator FALSE otherwise*/ michael@0: #define _isIDSeparator(a) (a == '_' || a == '-') michael@0: michael@0: U_CFUNC const char* michael@0: uloc_getCurrentCountryID(const char* oldID); michael@0: michael@0: U_CFUNC const char* michael@0: uloc_getCurrentLanguageID(const char* oldID); michael@0: michael@0: U_CFUNC int32_t michael@0: ulocimp_getLanguage(const char *localeID, michael@0: char *language, int32_t languageCapacity, michael@0: const char **pEnd); michael@0: michael@0: U_CFUNC int32_t michael@0: ulocimp_getScript(const char *localeID, michael@0: char *script, int32_t scriptCapacity, michael@0: const char **pEnd); michael@0: michael@0: U_CFUNC int32_t michael@0: ulocimp_getCountry(const char *localeID, michael@0: char *country, int32_t countryCapacity, michael@0: const char **pEnd); michael@0: michael@0: U_CAPI const char * U_EXPORT2 michael@0: locale_getKeywordsStart(const char *localeID); michael@0: michael@0: #endif