// © 2022 and later: Unicode, Inc. and others. // License & terms of use: http://www.unicode.org/copyright.html #ifndef __SIMPLENUMBERFORMATTERH__ #define __SIMPLENUMBERFORMATTERH__ #include "unicode/utypes.h" #if U_SHOW_CPLUSPLUS_API #if !UCONFIG_NO_FORMATTING #include "unicode/dcfmtsym.h" #include "unicode/usimplenumberformatter.h" #include "unicode/formattednumber.h" /** * \file * \brief C++ API: Simple number formatting focused on low memory and code size. * * These functions render locale-aware number strings but without the bells and whistles found in * other number formatting APIs such as those in numberformatter.h, like units and currencies. * * <pre> * SimpleNumberFormatter snf = SimpleNumberFormatter::forLocale("de-CH", status); * FormattedNumber result = snf.formatInt64(-1000007, status); * assertEquals("", u"-1’000’007", result.toString(status)); * </pre> */ U_NAMESPACE_BEGIN namespace number { // icu::number namespace impl { class UFormattedNumberData; struct SimpleMicroProps; class AdoptingSignumModifierStore; } // icu::number::impl #ifndef U_HIDE_DRAFT_API /** * An input type for SimpleNumberFormatter. * * This class is mutable and not intended for public subclassing. This class is movable but not copyable. * * @draft ICU 73 */ class U_I18N_API SimpleNumber : public UMemory { … }; /** * A special NumberFormatter focused on smaller binary size and memory use. * * SimpleNumberFormatter is capable of basic number formatting, including grouping separators, * sign display, and rounding. It is not capable of currencies, compact notation, or units. * * This class is immutable and not intended for public subclassing. This class is movable but not copyable. * * @draft ICU 73 */ class U_I18N_API SimpleNumberFormatter : public UMemory { … }; #endif // U_HIDE_DRAFT_API } // namespace number U_NAMESPACE_END #endif /* #if !UCONFIG_NO_FORMATTING */ #endif /* U_SHOW_CPLUSPLUS_API */ #endif // __SIMPLENUMBERFORMATTERH__