32 #if U_SHOW_CPLUSPLUS_API
34 #if !UCONFIG_NO_FORMATTING
173 kFormatSymbolCount = kNineDigitSymbol + 2
278 inline UnicodeString getSymbol(ENumberFormatSymbol symbol)
const;
292 void setSymbol(ENumberFormatSymbol symbol,
const UnicodeString &value,
const UBool propogateDigits);
294 #ifndef U_HIDE_INTERNAL_API
303 #endif // U_HIDE_INTERNAL_API
309 inline Locale getLocale()
const;
335 UBool beforeCurrency,
348 UBool beforeCurrency,
363 static UClassID U_EXPORT2 getStaticClassID();
390 #ifndef U_HIDE_INTERNAL_API
395 return fIsCustomCurrencySymbol;
402 return fIsCustomIntlCurrencySymbol;
409 return fCodePointZero;
428 inline const UnicodeString& getConstSymbol(ENumberFormatSymbol symbol)
const;
430 #ifndef U_HIDE_INTERNAL_API
446 inline const UnicodeString& getConstDigitSymbol(int32_t digit)
const;
452 inline const char16_t* getCurrencyPattern(
void)
const;
497 const char16_t* currPattern;
501 UBool fIsCustomCurrencySymbol;
502 UBool fIsCustomIntlCurrencySymbol;
510 if(symbol < kFormatSymbolCount) {
511 strPtr = &fSymbols[symbol];
522 if(symbol < kFormatSymbolCount) {
523 strPtr = &fSymbols[symbol];
530 #ifndef U_HIDE_INTERNAL_API
531 inline const UnicodeString& DecimalFormatSymbols::getConstDigitSymbol(int32_t digit)
const {
532 if (digit < 0 || digit > 9) {
536 return fSymbols[kZeroDigitSymbol];
539 return fSymbols[key];
547 if (symbol == kCurrencySymbol) {
548 fIsCustomCurrencySymbol =
true;
550 else if (symbol == kIntlCurrencySymbol) {
551 fIsCustomIntlCurrencySymbol =
true;
553 if(symbol<kFormatSymbolCount) {
554 fSymbols[symbol]=value;
560 if (symbol == kZeroDigitSymbol) {
563 fCodePointZero = sym;
564 for ( int8_t i = 1 ; i<= 9 ; i++ ) {
571 }
else if (symbol >= kOneDigitSymbol && symbol <= kNineDigitSymbol) {
579 DecimalFormatSymbols::getLocale()
const {
583 #ifndef U_HIDE_INTERNAL_API
584 inline const char16_t*
585 DecimalFormatSymbols::getCurrencyPattern()
const {
virtual UClassID getDynamicClassID() const
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
Defines numbering systems.
UCurrencySpacing
Constants for specifying currency spacing.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
#define ULOC_FULLNAME_CAPACITY
Useful constant for the maximum size of the whole locale ID (including the terminating NULL and all k...
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
C++ API: NumberingSystem object.
C API: Unicode Properties.
C++ API: Common ICU base class UObject.
char16_t UChar
The base type for UTF-16 code units and pointers.
UChar32 char32At(int32_t offset) const
Return the code point that contains the code unit at offset offset.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
ULocDataLocaleType
Constants for *_getLocale() Allow user to select whether she wants information on requested...
C++ API: Locale ID object.
U_CAPI int32_t u_charDigitValue(UChar32 c)
Returns the decimal digit value of a decimal digit character.
Basic definitions for ICU, for both C and C++ APIs.
int32_t countChar32(int32_t start=0, int32_t length=INT32_MAX) const
Count Unicode code points in the length char16_t code units of the string.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
UObject is the common ICU "boilerplate" class.
One more than the highest normal UCurrencySpacing value.
int8_t UBool
The ICU boolean type, a signed-byte integer.
C API: Compatibility APIs for number formatting.
A Locale object represents a specific geographical, political, or cultural region.