FieldPositionIteratorHandler;
94 classFormattedStringBuilder;
96 namespacenumparse::impl {
99 classNumberParserImpl;
100 classMultiplierParseHandler;
114 classUnlocalizedNumberFormatter;
115 classLocalizedNumberFormatter;
116 classSimpleNumberFormatter;
117 classFormattedNumber;
119 classScientificNotation;
121 classFractionPrecision;
122 classCurrencyPrecision;
123 classIncrementPrecision;
143 staticconstexpr int32_t kInternalDefaultThreshold = 3;
149 classDecimalQuantity;
150 classUFormattedNumberData;
151 classNumberFormatterImpl;
152 structParsedPatternInfo;
153 classScientificModifier;
154 classMultiplierProducer;
156 classScientificHandler;
158 classAffixPatternProvider;
159 classNumberPropertyMapper;
160 structDecimalFormatProperties;
161 classMultiplierFormatHandler;
162 classCurrencySymbols;
163 classGeneratorHelpers;
165 classNumberRangeFormatterImpl;
167 structUFormattedNumberImpl;
168 classMutablePatternModifier;
169 classImmutablePatternModifier;
170 structDecimalFormatWarehouse;
171 structSimpleMicroProps;
172 classAdoptingSignumModifierStore;
350NTN_SCIENTIFIC, NTN_COMPACT, NTN_SIMPLE, NTN_ERROR
353 unionNotationUnion {
376 Notation(
constNotationType &type,
constNotationUnion &union_) : fType(type), fUnion(union_) {}
379fUnion.errorCode = errorCode;
382Notation() : fType(NTN_SIMPLE), fUnion() {}
385 if(fType == NTN_ERROR) {
386status = fUnion.errorCode;
393 friend structimpl::MacroProps;
394 friend classScientificNotation;
397 friend classimpl::NumberFormatterImpl;
398 friend classimpl::ScientificModifier;
399 friend classimpl::ScientificHandler;
402 friend classimpl::GeneratorHelpers;
447 usingNotation::Notation;
456 friend classimpl::NumberPropertyMapper;
626int32_t maxSignificantDigits);
708RND_FRACTION_SIGNIFICANT,
725 unionPrecisionUnion {
766 Precision(
constPrecisionType& type,
constPrecisionUnion& union_)
767: fType(type), fUnion(union_) {}
770fUnion.errorCode = errorCode;
773Precision() : fType(RND_BOGUS) {}
775 boolisBogus()
const{
776 returnfType == RND_BOGUS;
780 if(fType == RND_ERROR) {
781status = fUnion.errorCode;
788Precision withCurrency(
constCurrencyUnit ¤cy,
UErrorCode&status)
const;
790 staticFractionPrecision constructFraction(int32_t minFrac, int32_t maxFrac);
792 staticPrecision constructSignificant(int32_t minSig, int32_t maxSig);
794 staticPrecision constructFractionSignificant(
795 constFractionPrecision &base,
801 staticIncrementPrecision constructIncrement(uint64_t increment, impl::digits_t magnitude);
803 staticCurrencyPrecision constructCurrency(
UCurrencyUsageusage);
806 friend structimpl::MacroProps;
807 friend structimpl::MicroProps;
810 friend classimpl::NumberFormatterImpl;
813 friend classimpl::NumberPropertyMapper;
816 friend classimpl::RoundingImpl;
819 friend classFractionPrecision;
820 friend classCurrencyPrecision;
821 friend classIncrementPrecision;
824 friend classimpl::GeneratorHelpers;
827 friend classunits::UnitsRouter;
856int32_t minSignificantDigits,
857int32_t maxSignificantDigits,
900 usingPrecision::Precision;
938 usingPrecision::Precision;
974 usingPrecision::Precision;
1022 boolfFormatFailIfMoreThanMaxDigits;
1026 boolfHasError =
false;
1028IntegerWidth(impl::digits_t minInt, impl::digits_t maxInt,
boolformatFailIfMoreThanMaxDigits);
1031fUnion.errorCode = errorCode;
1036fUnion.minMaxInt.fMinInt = -1;
1040 staticIntegerWidth standard() {
1041 returnIntegerWidth::zeroFillTo(1);
1044 boolisBogus()
const{
1045 return!fHasError && fUnion.minMaxInt.fMinInt == -1;
1050status = fUnion.errorCode;
1056 voidapply(impl::DecimalQuantity &quantity,
UErrorCode&status)
const;
1058 bool operator==(
constIntegerWidth& other)
const;
1061 friend structimpl::MacroProps;
1062 friend structimpl::MicroProps;
1065 friend classimpl::NumberFormatterImpl;
1068 friend classimpl::MutablePatternModifier;
1069 friend classimpl::ImmutablePatternModifier;
1072 friend classimpl::NumberPropertyMapper;
1075 friend classimpl::GeneratorHelpers;
1158 #ifndef U_HIDE_INTERNAL_API 1160 Scale(int32_t magnitude, impl::DecNum* arbitraryToAdopt);
1165impl::DecNum* fArbitrary;
1168 Scale(
UErrorCodeerror) : fMagnitude(0), fArbitrary(nullptr), fError(error) {}
1172 boolisValid()
const{
1173 returnfMagnitude != 0 || fArbitrary !=
nullptr;
1184 voidapplyTo(impl::DecimalQuantity& quantity)
const;
1186 voidapplyReciprocalTo(impl::DecimalQuantity& quantity)
const;
1189 friend structimpl::MacroProps;
1190 friend structimpl::MicroProps;
1193 friend classimpl::NumberFormatterImpl;
1196 friend classimpl::MultiplierFormatHandler;
1199 friend classimpl::GeneratorHelpers;
1202 friendclass ::icu::numparse::impl::NumberParserImpl;
1203 friendclass ::icu::numparse::impl::MultiplierParseHandler;
1226 #ifndef U_HIDE_INTERNAL_API 1269 friend classimpl::NumberFormatterImpl;
1272 friend classimpl::GeneratorHelpers;
1276 friend structimpl::MacroProps;
1301 #ifndef U_HIDE_INTERNAL_API 1343 if(fType == SYMPTR_DFS && fPtr.dfs ==
nullptr) {
1346}
else if(fType == SYMPTR_NS && fPtr.ns ==
nullptr) {
1354 enumSymbolsPointerType {
1355SYMPTR_NONE, SYMPTR_DFS, SYMPTR_NS
1363 voiddoCopyFrom(
constSymbolsWrapper &other);
1365 voiddoMoveFrom(SymbolsWrapper&& src);
1374 #ifndef U_HIDE_INTERNAL_API 1388: fGrouping1(grouping1),
1389fGrouping2(grouping2),
1390fMinGrouping(minGrouping),
1391fStrategy(strategy) {}
1419int16_t fMinGrouping;
1427 Grouper() : fGrouping1(-3) {}
1429 boolisBogus()
const{
1430 returnfGrouping1 == -3;
1434 voidsetLocaleData(
constimpl::ParsedPatternInfo &patternInfo,
const Locale& locale);
1436 boolgroupAtPosition(int32_t position,
constimpl::DecimalQuantity &value)
const;
1439 friend structMacroProps;
1440 friend structMicroProps;
1441 friend structSimpleMicroProps;
1444 friend classNumberFormatterImpl;
1445 friendclass ::icu::number::SimpleNumberFormatter;
1448 friendclass ::icu::numparse::impl::NumberParserImpl;
1451 friend classimpl::GeneratorHelpers;
1458 #ifndef U_HIDE_INTERNAL_API 1481Padder(int32_t width);
1484fUnion.errorCode = errorCode;
1487Padder() : fWidth(-2) {}
1489 boolisBogus()
const{
1490 returnfWidth == -2;
1495status = fUnion.errorCode;
1501 boolisValid()
const{
1505int32_t padAndApply(
constimpl::Modifier &mod1,
constimpl::Modifier &mod2,
1506FormattedStringBuilder &
string, int32_t leftIndex, int32_t rightIndex,
1510 friend structMacroProps;
1511 friend structMicroProps;
1514 friend classimpl::NumberFormatterImpl;
1517 friend classimpl::GeneratorHelpers;
1559 boolapproximately =
false;
1574 constAffixPatternProvider* affixProvider =
nullptr;
1580int32_t threshold = kInternalDefaultThreshold;
1592 returnnotation.copyErrorTo(status) || precision.copyErrorTo(status) ||
1593padder.copyErrorTo(status) || integerWidth.copyErrorTo(status) ||
1594symbols.
copyErrorTo(status) || scale.copyErrorTo(status) || usage.copyErrorTo(status) ||
1595unitDisplayCase.copyErrorTo(status);
1601 #if (U_PF_WINDOWS <= U_PLATFORM && U_PLATFORM <= U_PF_CYGWIN) && defined(_MSC_VER) 1607 #pragma warning(push) 1608 #pragma warning(disable: 4661) 1616 template<
typenameDerived>
2280 #ifndef U_HIDE_INTERNAL_API 2305 #ifndef U_HIDE_INTERNAL_API 2398fMacros.copyErrorTo(outErrorCode);
2415 friend classimpl::NumberRangeFormatterImpl;
2421 extern template classNumberFormatterSettings<UnlocalizedNumberFormatter>;
2422 extern template classNumberFormatterSettings<LocalizedNumberFormatter>;
2565 #ifndef U_HIDE_INTERNAL_API 2662 #ifndef U_HIDE_INTERNAL_API 2689 constimpl::NumberFormatterImpl* fCompiled {
nullptr};
2690 charfUnsafeCallCount[8] {};
2694 constimpl::DecimalFormatWarehouse* fWarehouse {
nullptr};
2696 explicitLocalizedNumberFormatter(
constNumberFormatterSettings<LocalizedNumberFormatter>& other);
2698 explicitLocalizedNumberFormatter(NumberFormatterSettings<LocalizedNumberFormatter>&& src) noexcept;
2700LocalizedNumberFormatter(
constimpl::MacroProps ¯os,
constLocale &locale);
2702LocalizedNumberFormatter(impl::MacroProps &¯os,
constLocale &locale);
2704 voidresetCompiled();
2706 voidlnfMoveHelper(LocalizedNumberFormatter&& src);
2708 voidlnfCopyHelper(
constLocalizedNumberFormatter& src,
UErrorCode& status);
2713 boolcomputeCompiled(
UErrorCode& status)
const;
2716 friend classNumberFormatterSettings<UnlocalizedNumberFormatter>;
2717 friend classNumberFormatterSettings<LocalizedNumberFormatter>;
2720 friend classUnlocalizedNumberFormatter;
2723 #if (U_PF_WINDOWS <= U_PLATFORM && U_PLATFORM <= U_PF_CYGWIN) && defined(_MSC_VER) 2725 #pragma warning(pop)C++ API: Appendable class: Sink for Unicode code points and 16-bit code units (char16_ts).
C++ API: Interface for writing bytes, and implementation classes.
A unit of currency, such as USD (U.S.
This class represents the set of symbols needed by DecimalFormat to format numbers.
Represents all the display options that are supported by CLDR such as grammatical case,...
Base class for all formats.
"Smart pointer" class, deletes objects via the standard C++ delete operator.
A Locale object represents a specific geographical, political, or cultural region.
A unit such as length, mass, volume, currency, etc.
Defines numbering systems.
Defines rules for mapping non-negative numeric values onto a small set of keywords.
A string-like object that points to a sized piece of memory.
UMemory is the common ICU base class.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
A class that defines a rounding precision parameterized by a currency to be used when formatting numb...
Precision withCurrency(const CurrencyUnit ¤cy) const
Associates a currency with this rounding precision.
The result of a number formatting operation.
A class that defines a rounding precision based on a number of fraction places and optionally signifi...
Precision withMinDigits(int32_t minSignificantDigits) const
Ensure that no less than this number of significant digits are retained when rounding according to fr...
Precision withSignificantDigits(int32_t minSignificantDigits, int32_t maxSignificantDigits, UNumberRoundingPriority priority) const
Override maximum fraction digits with maximum significant digits depending on the magnitude of the nu...
Precision withMaxDigits(int32_t maxSignificantDigits) const
Ensure that no more than this number of significant digits are retained when rounding according to fr...
A class that defines a rounding precision parameterized by a rounding increment to be used when forma...
Precision withMinFraction(int32_t minFrac) const
Specifies the minimum number of fraction digits to render after the decimal separator,...
A class that defines the strategy for padding and truncating integers before the decimal separator.
static IntegerWidth zeroFillTo(int32_t minInt)
Pad numbers at the beginning with zeros to guarantee a certain number of numerals before the decimal ...
IntegerWidth truncateAt(int32_t maxInt)
Truncate numbers exceeding a certain number of numerals before the decimal separator.
A NumberFormatter that has a locale associated with it; this means .format() methods are available.
const DecimalFormatSymbols * getDecimalFormatSymbols() const
const impl::NumberFormatterImpl * getCompiled() const
Internal method for testing.
UnlocalizedNumberFormatter withoutLocale() const &
Disassociate the locale from this formatter.
FormattedNumber formatInt(int64_t value, UErrorCode &status) const
Format the given integer number to a string using the settings specified in the NumberFormatter fluen...
int32_t getCallCount() const
Internal method for testing.
~LocalizedNumberFormatter()
Destruct this LocalizedNumberFormatter, cleaning up any memory it might own.
Format * toFormat(UErrorCode &status) const
Creates a representation of this LocalizedNumberFormat as an icu::Format, enabling the use of this nu...
void formatImpl(impl::UFormattedNumberData *results, UErrorCode &status) const
This is the core entrypoint to the number formatting pipeline.
FormattedNumber formatDecimal(StringPiece value, UErrorCode &status) const
Format the given decimal number to a string using the settings specified in the NumberFormatter fluen...
void getAffixImpl(bool isPrefix, bool isNegative, UnicodeString &result, UErrorCode &status) const
Internal method for DecimalFormat compatibility.
FormattedNumber formatDecimalQuantity(const impl::DecimalQuantity &dq, UErrorCode &status) const
Internal method.
FormattedNumber formatDouble(double value, UErrorCode &status) const
Format the given float or double to a string using the settings specified in the NumberFormatter flue...
A class that defines the notation style to be used when formatting numbers in NumberFormatter.
static CompactNotation compactShort()
Print the number using short-form compact notation.
static ScientificNotation engineering()
Print the number using engineering notation, a variant of scientific notation in which the exponent m...
static CompactNotation compactLong()
Print the number using long-form compact notation.
static SimpleNotation simple()
Print the number using simple notation without any scaling by powers of ten.
static ScientificNotation scientific()
Print the number using scientific notation (also known as scientific form, standard index form,...
An abstract base class for specifying settings related to number formatting.
Derived unitDisplayCase(StringPiece unitDisplayCase) &&
NOTE: Use displayOptions instead.
Derived adoptSymbols(NumberingSystem *symbols) const &
Specifies that the given numbering system should be used when fetching symbols.
Derived precision(const Precision &precision) const &
Specifies the rounding precision to use when formatting numbers.
Derived decimal(UNumberDecimalSeparatorDisplay style) &&
Overload of decimal() for use on an rvalue reference.
Derived unitWidth(UNumberUnitWidth width) const &
Sets the width of the unit (measure unit or currency).
Derived adoptUnit(icu::MeasureUnit *unit) const &
Like unit(), but takes ownership of a pointer.
Derived perUnit(const icu::MeasureUnit &perUnit) &&
Overload of perUnit() for use on an rvalue reference.
Derived padding(const impl::Padder &padder) &&
Derived adoptSymbols(NumberingSystem *symbols) &&
Overload of adoptSymbols() for use on an rvalue reference.
Derived macros(const impl::MacroProps ¯os) &&
Derived roundingMode(UNumberFormatRoundingMode roundingMode) &&
Overload of roundingMode() for use on an rvalue reference.
Derived integerWidth(const IntegerWidth &style) const &
Specifies the minimum and maximum number of digits to render before the decimal mark.
Derived macros(const impl::MacroProps ¯os) const &
Internal fluent setter to overwrite the entire macros object.
Derived threshold(int32_t threshold) const &
Internal fluent setter to support a custom regulation threshold.
Derived perUnit(const icu::MeasureUnit &perUnit) const &
Sets a unit to be used in the denominator.
Derived integerWidth(const IntegerWidth &style) &&
Overload of integerWidth() for use on an rvalue reference.
Derived unitDisplayCase(StringPiece unitDisplayCase) const &
NOTE: Use displayOptions instead.
Derived grouping(UNumberGroupingStrategy strategy) const &
Specifies the grouping strategy to use when formatting numbers.
Derived unit(const icu::MeasureUnit &unit) const &
Specifies the unit (unit of measure, currency, or percent) to associate with rendered numbers.
Derived displayOptions(const DisplayOptions &displayOptions) const &
Specifies the DisplayOptions.
Derived usage(StringPiece usage) &&
Overload of usage() for use on an rvalue reference.
Derived displayOptions(const DisplayOptions &displayOptions) &&
Overload of displayOptions() for use on an rvalue reference.
Derived adoptPerUnit(icu::MeasureUnit *perUnit) const &
Like perUnit(), but takes ownership of a pointer.
Derived adoptUnit(icu::MeasureUnit *unit) &&
Overload of adoptUnit() for use on an rvalue reference.
Derived scale(const Scale &scale) &&
Overload of scale() for use on an rvalue reference.
Derived precision(const Precision &precision) &&
Overload of precision() for use on an rvalue reference.
Derived symbols(const DecimalFormatSymbols &symbols) &&
Overload of symbols() for use on an rvalue reference.
Derived padding(const impl::Padder &padder) const &
Set the padding strategy.
Derived notation(const Notation ¬ation) const &
Specifies the notation style (simple, scientific, or compact) for rendering numbers.
Derived sign(UNumberSignDisplay style) const &
Sets the plus/minus sign display strategy.
Derived threshold(int32_t threshold) &&
Derived roundingMode(UNumberFormatRoundingMode roundingMode) const &
Specifies how to determine the direction to round a number when it has more digits than fit in the de...
Derived symbols(const DecimalFormatSymbols &symbols) const &
Specifies the symbols (decimal separator, grouping separator, percent sign, numerals,...
Derived macros(impl::MacroProps &¯os) &&
LocalPointer< Derived > clone() const &
Returns the current (Un)LocalizedNumberFormatter as a LocalPointer wrapping a heap-allocated copy of ...
Derived sign(UNumberSignDisplay style) &&
Overload of sign() for use on an rvalue reference.
UnicodeString toSkeleton(UErrorCode &status) const
Creates a skeleton string representation of this number formatter.
Derived grouping(UNumberGroupingStrategy strategy) &&
Overload of grouping() for use on an rvalue reference.
Derived usage(StringPiece usage) const &
Specifies the usage for which numbers will be formatted ("person-height", "road", "rainfall",...
Derived adoptPerUnit(icu::MeasureUnit *perUnit) &&
Overload of adoptPerUnit() for use on an rvalue reference.
Derived unitWidth(UNumberUnitWidth width) &&
Overload of unitWidth() for use on an rvalue reference.
Derived decimal(UNumberDecimalSeparatorDisplay style) const &
Sets the decimal separator display strategy.
Derived unit(const icu::MeasureUnit &unit) &&
Overload of unit() for use on an rvalue reference.
Derived macros(impl::MacroProps &¯os) const &
Derived scale(const Scale &scale) const &
Sets a scale (multiplier) to be used to scale the number by an arbitrary amount before formatting.
Derived notation(const Notation ¬ation) &&
Overload of notation() for use on an rvalue reference.
See the main description in numberformatter.h for documentation and examples.
static UnlocalizedNumberFormatter forSkeleton(const UnicodeString &skeleton, UParseError &perror, UErrorCode &status)
Call this method at the beginning of a NumberFormatter fluent chain to create an instance based on a ...
static UnlocalizedNumberFormatter forSkeleton(const UnicodeString &skeleton, UErrorCode &status)
Call this method at the beginning of a NumberFormatter fluent chain to create an instance based on a ...
static UnlocalizedNumberFormatter with()
Call this method at the beginning of a NumberFormatter fluent chain in which the locale is not curren...
NumberFormatter()=delete
Use factory methods instead of the constructor to create a NumberFormatter.
static LocalizedNumberFormatter withLocale(const Locale &locale)
Call this method at the beginning of a NumberFormatter fluent chain in which the locale is known at t...
A class that defines the rounding precision to be used when formatting numbers in NumberFormatter.
static SignificantDigitsPrecision maxSignificantDigits(int32_t maxSignificantDigits)
Show numbers rounded if necessary to a certain number of significant digits/figures.
static FractionPrecision fixedFraction(int32_t minMaxFractionPlaces)
Show numbers rounded if necessary to a certain number of fraction places (numerals after the decimal ...
static SignificantDigitsPrecision minSignificantDigits(int32_t minSignificantDigits)
Always show at least a certain number of significant digits/figures, padding with zeros if necessary.
static FractionPrecision maxFraction(int32_t maxFractionPlaces)
Show numbers rounded if necessary to a certain number of fraction places (numerals after the decimal ...
static IncrementPrecision increment(double roundingIncrement)
Show numbers rounded if necessary to the closest multiple of a certain rounding increment.
static CurrencyPrecision currency(UCurrencyUsage currencyUsage)
Show numbers rounded and padded according to the rules for the currency unit.
static FractionPrecision minFraction(int32_t minFractionPlaces)
Always show at least a certain number of fraction places after the decimal separator,...
Precision trailingZeroDisplay(UNumberTrailingZeroDisplay trailingZeroDisplay) const
Configure how trailing zeros are displayed on numbers.
static Precision unlimited()
Show all available digits to full precision.
static FractionPrecision integer()
Show numbers rounded if necessary to the nearest integer.
static SignificantDigitsPrecision fixedSignificantDigits(int32_t minMaxSignificantDigits)
Show numbers rounded if necessary to a certain number of significant digits or significant figures.
static IncrementPrecision incrementExact(uint64_t mantissa, int16_t magnitude)
Version of Precision::increment() that takes an integer at a particular power of 10.
static FractionPrecision minMaxFraction(int32_t minFractionPlaces, int32_t maxFractionPlaces)
Show numbers rounded if necessary to a certain number of fraction places (numerals after the decimal ...
static SignificantDigitsPrecision minMaxSignificantDigits(int32_t minSignificantDigits, int32_t maxSignificantDigits)
Show numbers rounded if necessary to a certain number of significant digits/figures; in addition,...
A class that defines a quantity by which a number should be multiplied when formatting.
static Scale none()
Do not change the value of numbers when formatting or parsing.
Scale & operator=(const Scale &other)
static Scale powerOfTen(int32_t power)
Multiply numbers by a power of ten before formatting.
Scale(const Scale &other)
static Scale byDoubleAndPowerOfTen(double multiplicand, int32_t power)
Multiply a number by both a power of ten and by an arbitrary double value.
static Scale byDecimal(StringPiece multiplicand)
Multiply numbers by an arbitrary value before formatting.
Scale(int32_t magnitude, impl::DecNum *arbitraryToAdopt)
Scale(Scale &&src) noexcept
static Scale byDouble(double multiplicand)
Multiply numbers by an arbitrary value before formatting.
Scale & operator=(Scale &&src) noexcept
A class that defines the scientific notation style to be used when formatting numbers in NumberFormat...
ScientificNotation withExponentSignDisplay(UNumberSignDisplay exponentSignDisplay) const
Sets whether to show the sign on positive and negative exponents in scientific notation.
ScientificNotation withMinExponentDigits(int32_t minExponentDigits) const
Sets the minimum number of digits to show in the exponent of scientific notation, padding with zeros ...
A NumberFormatter that does not yet have a locale.
UnlocalizedNumberFormatter()=default
Default constructor: puts the formatter into a valid but undefined state.
UnlocalizedNumberFormatter & operator=(const UnlocalizedNumberFormatter &other)
Copy assignment operator.
UnlocalizedNumberFormatter(const UnlocalizedNumberFormatter &other)
Returns a copy of this UnlocalizedNumberFormatter.
LocalizedNumberFormatter locale(const icu::Locale &locale) &&
Overload of locale() for use on an rvalue reference.
UnlocalizedNumberFormatter(UnlocalizedNumberFormatter &&src) noexcept
Move constructor: The source UnlocalizedNumberFormatter will be left in a valid but undefined state.
UnlocalizedNumberFormatter & operator=(UnlocalizedNumberFormatter &&src) noexcept
Move assignment operator: The source UnlocalizedNumberFormatter will be left in a valid but undefined...
LocalizedNumberFormatter locale(const icu::Locale &locale) const &
Associate the given locale with the number formatter.
static Grouper forStrategy(UNumberGroupingStrategy grouping)
Grouper(int16_t grouping1, int16_t grouping2, int16_t minGrouping, UNumberGroupingStrategy strategy)
int16_t getSecondary() const
static Grouper forProperties(const DecimalFormatProperties &properties)
Resolve the values in Properties to a Grouper object.
int16_t getPrimary() const
static Padder forProperties(const DecimalFormatProperties &properties)
static Padder codePoints(UChar32 cp, int32_t targetWidth, UNumberFormatPadPosition position)
Manages NumberFormatterSettings::usage()'s char* instance on the heap.
StringProp(StringProp &&src) noexcept
StringProp(const StringProp &other)
StringProp & operator=(StringProp &&src) noexcept
StringProp & operator=(const StringProp &other)
void set(StringPiece value)
SymbolsWrapper & operator=(const SymbolsWrapper &other)
const NumberingSystem * getNumberingSystem() const
Get the NumberingSystem pointer.
bool isNumberingSystem() const
Whether the object is currently holding a NumberingSystem.
const DecimalFormatSymbols * getDecimalFormatSymbols() const
Get the DecimalFormatSymbols pointer.
SymbolsWrapper(const SymbolsWrapper &other)
SymbolsWrapper(SymbolsWrapper &&src) noexcept
void setTo(const DecimalFormatSymbols &dfs)
The provided object is copied, but we do not adopt it.
SymbolsWrapper & operator=(SymbolsWrapper &&src) noexcept
void setTo(const NumberingSystem *ns)
Adopt the provided object.
UBool copyErrorTo(UErrorCode &status) const
bool isDecimalFormatSymbols() const
Whether the object is currently holding a DecimalFormatSymbols.
C++ API: Currency Unit Information.
C++ API: Symbols for formatting numbers.
C++ API: Display options class.
C++ API: FieldPosition identifies the fields in a formatted output.
C API: Formatted number result from various number formatting functions.
C++ API: FieldPosition Iterator.
C++ API: A unit for measuring a quantity.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
C++ API: units for percent and permille.
int16_t digits_t
Datatype for minimum/maximum fraction digits.
void touchRangeLocales(impl::RangeMacroProps ¯os)
Used for NumberRangeFormatter and implemented in numrange_fluent.cpp.
C API: Parse Error Information.
C++ API: PluralRules object.
A UParseError struct is used to returned detailed information about parsing errors.
impl::digits_t fMinExponentDigits
UNumberSignDisplay fExponentSignDisplay
int8_t fEngineeringInterval
bool fRetain
Whether to retain trailing zeros based on the looser strategy.
UNumberRoundingPriority fPriority
impl::digits_t fIncrementMagnitude
bool copyErrorTo(UErrorCode &status) const
Check all members for errors.
StringProp unitDisplayCase
IntegerWidth integerWidth
C API: Encapsulates information about a currency.
UCurrencyUsage
Currency Usage used for Decimal Format.
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
int8_t UBool
The ICU boolean type, a signed-byte integer.
C API: Compatibility APIs for number formatting.
UNumberCompactStyle
Constants for specifying short or long format.
UNumberFormatPadPosition
The possible number format pad positions.
C API: Localized number formatting; not recommended for C++.
UNumberRoundingPriority
An enum declaring how to resolve conflicts between maximum fraction digits and maximum significant di...
UNumberSignDisplay
An enum declaring how to denote positive and negative numbers.
@ UNUM_SIGN_COUNT
One more than the highest UNumberSignDisplay value.
UNumberDecimalSeparatorDisplay
An enum declaring how to render the decimal separator.
@ UNUM_DECIMAL_SEPARATOR_COUNT
One more than the highest UNumberDecimalSeparatorDisplay value.
UNumberTrailingZeroDisplay
An enum declaring how to render trailing zeros.
@ UNUM_TRAILING_ZERO_AUTO
Display trailing zeros according to the settings for minimum fraction and significant digits.
UNumberUnitWidth
An enum declaring how to render units, including currencies.
@ UNUM_UNIT_WIDTH_COUNT
One more than the highest UNumberUnitWidth value.
C API: Header-only input options for various number formatting APIs.
UNumberFormatRoundingMode
The possible number format rounding modes.
@ UNUM_ROUND_HALFEVEN
Half-even rounding.
UNumberGroupingStrategy
An enum declaring the strategy for when and how to display grouping separators (i....
C++ API: Common ICU base class UObject.
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
@ U_MEMORY_ALLOCATION_ERROR
Memory allocation error.
@ U_ZERO_ERROR
No error, no warning.
#define U_FAILURE(x)
Does the error code indicate a failure?
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4