summaryrefslogtreecommitdiff
path: root/deps/icu-small/source/i18n/number_mapper.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/icu-small/source/i18n/number_mapper.h')
-rw-r--r--deps/icu-small/source/i18n/number_mapper.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/deps/icu-small/source/i18n/number_mapper.h b/deps/icu-small/source/i18n/number_mapper.h
index d28e9cec39..de7d9c3865 100644
--- a/deps/icu-small/source/i18n/number_mapper.h
+++ b/deps/icu-small/source/i18n/number_mapper.h
@@ -126,8 +126,14 @@ struct DecimalFormatWarehouse {
* TODO: Make some of these fields by value instead of by LocalPointer?
*/
struct DecimalFormatFields : public UMemory {
+
+ DecimalFormatFields() {}
+
+ DecimalFormatFields(const DecimalFormatProperties& propsToCopy)
+ : properties(propsToCopy) {}
+
/** The property bag corresponding to user-specified settings and settings from the pattern string. */
- LocalPointer<DecimalFormatProperties> properties;
+ DecimalFormatProperties properties;
/** The symbols for the current locale. */
LocalPointer<const DecimalFormatSymbols> symbols;
@@ -136,7 +142,7 @@ struct DecimalFormatFields : public UMemory {
* The pre-computed formatter object. Setters cause this to be re-computed atomically. The {@link
* #format} method uses the formatter directly without needing to synchronize.
*/
- LocalPointer<LocalizedNumberFormatter> formatter;
+ LocalizedNumberFormatter formatter;
/** The lazy-computed parser for .parse() */
std::atomic<::icu::numparse::impl::NumberParserImpl*> atomicParser = {};
@@ -148,7 +154,7 @@ struct DecimalFormatFields : public UMemory {
DecimalFormatWarehouse warehouse;
/** The effective properties as exported from the formatter object. Used by some getters. */
- LocalPointer<DecimalFormatProperties> exportedProperties;
+ DecimalFormatProperties exportedProperties;
// Data for fastpath
bool canUseFastFormat = false;