1#ifndef ICU4X_Decimal_D_HPP
2#define ICU4X_Decimal_D_HPP
14namespace capi {
struct Decimal; }
16struct DecimalLimitError;
17class DecimalParseError;
18class DecimalRoundingIncrement;
20class DecimalSignDisplay;
21class DecimalSignedRoundingMode;
44 inline static std::unique_ptr<icu4x::Decimal>
from(int32_t v);
51 inline static std::unique_ptr<icu4x::Decimal>
from(uint32_t v);
58 inline static std::unique_ptr<icu4x::Decimal>
from(int64_t v);
65 inline static std::unique_ptr<icu4x::Decimal>
from(uint64_t v);
114 inline uint8_t
digit_at(int16_t magnitude)
const;
192 inline void pad_end(int16_t position);
210 inline void round(int16_t position);
215 inline void ceil(int16_t position);
220 inline void expand(int16_t position);
225 inline void floor(int16_t position);
230 inline void trunc(int16_t position);
267 inline const icu4x::capi::Decimal* AsFFI()
const;
268 inline icu4x::capi::Decimal* AsFFI();
269 inline static const icu4x::Decimal* FromFFI(
const icu4x::capi::Decimal* ptr);
271 inline static void operator delete(
void* ptr);
278 static void operator delete[](
void*, size_t) =
delete;
Definition DecimalParseError.d.hpp:31
Definition DecimalRoundingIncrement.d.hpp:34
Definition DecimalSignDisplay.d.hpp:35
Definition DecimalSign.d.hpp:33
Definition DecimalSignedRoundingMode.d.hpp:39
Definition Decimal.d.hpp:36
void set_sign(icu4x::DecimalSign sign)
Definition Decimal.hpp:197
void multiply_pow10(int16_t power)
Definition Decimal.hpp:187
void apply_sign_display(icu4x::DecimalSignDisplay sign_display)
Definition Decimal.hpp:202
void pad_end(int16_t position)
Definition Decimal.hpp:224
bool is_zero() const
Definition Decimal.hpp:182
void round(int16_t position)
Definition Decimal.hpp:234
static icu4x::diplomat::result< std::unique_ptr< icu4x::Decimal >, icu4x::DecimalLimitError > from_double_with_lower_magnitude(double f, int16_t magnitude)
Definition Decimal.hpp:134
int16_t nonzero_magnitude_start() const
Definition Decimal.hpp:172
int16_t magnitude_end() const
Definition Decimal.hpp:167
void round_with_mode_and_increment(int16_t position, icu4x::DecimalSignedRoundingMode mode, icu4x::DecimalRoundingIncrement increment)
Definition Decimal.hpp:265
void floor(int16_t position)
Definition Decimal.hpp:249
int16_t nonzero_magnitude_end() const
Definition Decimal.hpp:177
void trim_start()
Definition Decimal.hpp:207
void trim_end_if_integer()
Definition Decimal.hpp:215
static icu4x::diplomat::result< std::unique_ptr< icu4x::Decimal >, icu4x::DecimalLimitError > from_double_with_integer_precision(double f)
Definition Decimal.hpp:129
void to_string_write(W &writeable_output) const
Definition Decimal.hpp:286
bool equals(const icu4x::Decimal &other) const
Definition Decimal.hpp:292
icu4x::diplomat::result< std::monostate, std::monostate > concatenate_end(icu4x::Decimal &other)
Definition Decimal.hpp:272
void set_max_position(int16_t position)
Definition Decimal.hpp:229
icu4x::DecimalSign sign() const
Definition Decimal.hpp:192
void expand(int16_t position)
Definition Decimal.hpp:244
static icu4x::diplomat::result< std::unique_ptr< icu4x::Decimal >, icu4x::DecimalLimitError > from_double_with_round_trip_precision(double f)
Definition Decimal.hpp:146
static icu4x::diplomat::result< std::unique_ptr< icu4x::Decimal >, icu4x::DecimalLimitError > from_double_with_significant_digits(double f, uint8_t digits)
Definition Decimal.hpp:140
void ceil(int16_t position)
Definition Decimal.hpp:239
std::string to_string() const
Definition Decimal.hpp:278
int16_t magnitude_start() const
Definition Decimal.hpp:162
uint8_t digit_at(int16_t magnitude) const
Definition Decimal.hpp:156
static icu4x::diplomat::result< std::unique_ptr< icu4x::Decimal >, icu4x::DecimalParseError > from_string(std::string_view v)
Definition Decimal.hpp:151
static std::unique_ptr< icu4x::Decimal > from(int32_t v)
Definition Decimal.hpp:109
void trim_end()
Definition Decimal.hpp:211
void trunc(int16_t position)
Definition Decimal.hpp:254
void pad_start(int16_t position)
Definition Decimal.hpp:219
void round_with_mode(int16_t position, icu4x::DecimalSignedRoundingMode mode)
Definition Decimal.hpp:259
Definition DecimalLimitError.d.hpp:26
Definition diplomat_runtime.hpp:243