ICU 52.1  52.1
unumsys.h
Go to the documentation of this file.
1 /*
2 *****************************************************************************************
3 * Copyright (C) 2013, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 *****************************************************************************************
6 */
7 
8 #ifndef UNUMSYS_H
9 #define UNUMSYS_H
10 
11 #include "unicode/utypes.h"
12 
13 #if !UCONFIG_NO_FORMATTING
14 
15 #include "unicode/uenum.h"
16 #include "unicode/localpointer.h"
17 
37 #ifndef U_HIDE_DRAFT_API
38 
43 struct UNumberingSystem;
57 U_DRAFT UNumberingSystem * U_EXPORT2
58 unumsys_open(const char *locale, UErrorCode *status);
59 
78 U_DRAFT UNumberingSystem * U_EXPORT2
79 unumsys_openByName(const char *name, UErrorCode *status);
80 
86 U_DRAFT void U_EXPORT2
88 
89 #if U_SHOW_CPLUSPLUS_API
91 
101 
103 #endif
104 
113 U_DRAFT UEnumeration * U_EXPORT2
115 
125 U_DRAFT const char * U_EXPORT2
126 unumsys_getName(const UNumberingSystem *unumsys);
127 
136 U_DRAFT UBool U_EXPORT2
138 
147 U_DRAFT int32_t U_EXPORT2
148 unumsys_getRadix(const UNumberingSystem *unumsys);
149 
166 U_DRAFT int32_t U_EXPORT2
167 unumsys_getDescription(const UNumberingSystem *unumsys, UChar *result,
168  int32_t resultLength, UErrorCode *status);
169 
170 #endif /* U_HIDE_DRAFT_API */
171 
172 #endif /* #if !UCONFIG_NO_FORMATTING */
173 
174 #endif
const char * unumsys_getName(const UNumberingSystem *unumsys)
Returns the name of the specified UNumberingSystem object (if it is one of the predefined names known...
UNumberingSystem * unumsys_open(const char *locale, UErrorCode *status)
Opens a UNumberingSystem object using the default numbering system for the specified locale...
struct UEnumeration UEnumeration
structure representing an enumeration object instance
Definition: uenum.h:39
int32_t unumsys_getDescription(const UNumberingSystem *unumsys, UChar *result, int32_t resultLength, UErrorCode *status)
Get the description string of the specified UNumberingSystem object.
UBool unumsys_isAlgorithmic(const UNumberingSystem *unumsys)
Returns whether the given UNumberingSystem object is for an algorithmic (not purely positional) syste...
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction)
"Smart pointer" definition macro, deletes objects via the closeFunction.
Definition: localpointer.h:290
C++ API: "Smart pointers" for use with and in ICU4C C++ code.
UEnumeration * unumsys_openAvailableNames(UErrorCode *status)
Returns an enumeration over the names of all of the predefined numbering systems known to ICU...
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
Definition: umachine.h:278
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
"Smart pointer" class, closes a UNumberingSystem via unumsys_close().
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
void unumsys_close(UNumberingSystem *unumsys)
Close a UNumberingSystem object.
C API: String Enumeration.
UNumberingSystem * unumsys_openByName(const char *name, UErrorCode *status)
Opens a UNumberingSystem object using the name of one of the predefined numbering systems specified b...
Basic definitions for ICU, for both C and C++ APIs.
struct UNumberingSystem UNumberingSystem
C typedef for struct UNumberingSystem.
Definition: unumsys.h:44
int32_t unumsys_getRadix(const UNumberingSystem *unumsys)
Returns the radix of the specified UNumberingSystem object.
#define U_DRAFT
This is used to declare a function as a draft public ICU C API.
Definition: umachine.h:111
int8_t UBool
The ICU boolean type.
Definition: umachine.h:200