4#ifndef __SIMPLENUMBERFORMATTERH__
5#define __SIMPLENUMBERFORMATTERH__
9#if U_SHOW_CPLUSPLUS_API
11#if !UCONFIG_NO_FORMATTING
38class UFormattedNumberData;
39struct SimpleMicroProps;
40class AdoptingSignumModifierStore;
44#ifndef U_HIDE_DRAFT_API
145 other.fData =
nullptr;
157 other.fData =
nullptr;
168 impl::UFormattedNumberData* fData =
nullptr;
238 return format(SimpleNumber::forInt64(value, status), status);
241#ifndef U_HIDE_INTERNAL_API
271 fGroupingStrategy = other.fGroupingStrategy;
272 fOwnedSymbols = other.fOwnedSymbols;
273 fMicros = other.fMicros;
274 fPatternModifier = other.fPatternModifier;
275 other.fOwnedSymbols =
nullptr;
276 other.fMicros =
nullptr;
277 other.fPatternModifier =
nullptr;
287 fGroupingStrategy = other.fGroupingStrategy;
288 fOwnedSymbols = other.fOwnedSymbols;
289 fMicros = other.fMicros;
290 fPatternModifier = other.fPatternModifier;
291 other.fOwnedSymbols =
nullptr;
292 other.fMicros =
nullptr;
293 other.fPatternModifier =
nullptr;
314 impl::SimpleMicroProps* fMicros =
nullptr;
315 impl::AdoptingSignumModifierStore* fPatternModifier =
nullptr;
A Locale object represents a specific geographical, political, or cultural region.
UMemory is the common ICU base class.
An input type for SimpleNumberFormatter.
void setSign(USimpleNumberSign sign, UErrorCode &status)
Sets the sign of the number: an explicit plus sign, explicit minus sign, or no sign.
SimpleNumber & operator=(SimpleNumber &&other) noexcept
SimpleNumber move assignment.
SimpleNumber(SimpleNumber &&other) noexcept
SimpleNumber move constructor.
void setMinimumIntegerDigits(uint32_t minimumIntegerDigits, UErrorCode &status)
Pads the beginning of the number with zeros up to the given minimum number of integer digits.
void setMinimumFractionDigits(uint32_t minimumFractionDigits, UErrorCode &status)
Pads the end of the number with zeros up to the given minimum number of fraction digits.
void truncateStart(uint32_t maximumIntegerDigits, UErrorCode &status)
Truncates the most significant digits to the given maximum number of integer digits.
~SimpleNumber()
Destruct this SimpleNumber, cleaning up any memory it might own.
void multiplyByPowerOfTen(int32_t power, UErrorCode &status)
Changes the value of the SimpleNumber by a power of 10.
SimpleNumber()=default
Creates a new, empty SimpleNumber that does not contain a value.
static SimpleNumber forInt64(int64_t value, UErrorCode &status)
Creates a SimpleNumber for an integer.
void roundTo(int32_t power, UNumberFormatRoundingMode roundingMode, UErrorCode &status)
Rounds the value currently stored in the SimpleNumber to the given power of 10.
C++ API: Symbols for formatting numbers.
UNumberFormatRoundingMode
The possible number format rounding modes.
UNumberGroupingStrategy
An enum declaring the strategy for when and how to display grouping separators (i....
@ UNUM_GROUPING_AUTO
Display grouping using the default strategy for all locales.
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.