aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/icu/i18n/number_multiplier.h
diff options
context:
space:
mode:
authormcheshkov <mcheshkov@yandex-team.ru>2022-02-10 16:46:16 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:46:16 +0300
commit1312621288956f199a5bd5342b0133d4395fa725 (patch)
tree1a2c5ffcf89eb53ecd79dbc9bc0a195c27404d0c /contrib/libs/icu/i18n/number_multiplier.h
parente9d19cec64684c9c1e6b0c98297e5b895cf904fe (diff)
downloadydb-1312621288956f199a5bd5342b0133d4395fa725.tar.gz
Restoring authorship annotation for <mcheshkov@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/libs/icu/i18n/number_multiplier.h')
-rw-r--r--contrib/libs/icu/i18n/number_multiplier.h114
1 files changed, 57 insertions, 57 deletions
diff --git a/contrib/libs/icu/i18n/number_multiplier.h b/contrib/libs/icu/i18n/number_multiplier.h
index 6f4cb837ac..d8235dc601 100644
--- a/contrib/libs/icu/i18n/number_multiplier.h
+++ b/contrib/libs/icu/i18n/number_multiplier.h
@@ -1,57 +1,57 @@
-// © 2018 and later: Unicode, Inc. and others.
-// License & terms of use: http://www.unicode.org/copyright.html
-
-#include "unicode/utypes.h"
-
-#if !UCONFIG_NO_FORMATTING
-#ifndef __SOURCE_NUMBER_MULTIPLIER_H__
-#define __SOURCE_NUMBER_MULTIPLIER_H__
-
-#include "numparse_types.h"
-#include "number_decimfmtprops.h"
-
-U_NAMESPACE_BEGIN namespace number {
-namespace impl {
-
-
-/**
- * Wraps a {@link Multiplier} for use in the number formatting pipeline.
- */
-// Exported as U_I18N_API for tests
-class U_I18N_API MultiplierFormatHandler : public MicroPropsGenerator, public UMemory {
- public:
- MultiplierFormatHandler() = default; // WARNING: Leaves object in an unusable state; call setAndChain()
-
- void setAndChain(const Scale& multiplier, const MicroPropsGenerator* parent);
-
- void processQuantity(DecimalQuantity& quantity, MicroProps& micros,
- UErrorCode& status) const U_OVERRIDE;
-
- private:
- Scale fMultiplier;
- const MicroPropsGenerator *fParent;
-};
-
-
-/** Gets a Scale from a DecimalFormatProperties. In Java, defined in RoundingUtils.java */
-static inline Scale scaleFromProperties(const DecimalFormatProperties& properties) {
- int32_t magnitudeMultiplier = properties.magnitudeMultiplier + properties.multiplierScale;
- int32_t arbitraryMultiplier = properties.multiplier;
- if (magnitudeMultiplier != 0 && arbitraryMultiplier != 1) {
- return Scale::byDoubleAndPowerOfTen(arbitraryMultiplier, magnitudeMultiplier);
- } else if (magnitudeMultiplier != 0) {
- return Scale::powerOfTen(magnitudeMultiplier);
- } else if (arbitraryMultiplier != 1) {
- return Scale::byDouble(arbitraryMultiplier);
- } else {
- return Scale::none();
- }
-}
-
-
-} // namespace impl
-} // namespace number
-U_NAMESPACE_END
-
-#endif //__SOURCE_NUMBER_MULTIPLIER_H__
-#endif /* #if !UCONFIG_NO_FORMATTING */
+// © 2018 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_FORMATTING
+#ifndef __SOURCE_NUMBER_MULTIPLIER_H__
+#define __SOURCE_NUMBER_MULTIPLIER_H__
+
+#include "numparse_types.h"
+#include "number_decimfmtprops.h"
+
+U_NAMESPACE_BEGIN namespace number {
+namespace impl {
+
+
+/**
+ * Wraps a {@link Multiplier} for use in the number formatting pipeline.
+ */
+// Exported as U_I18N_API for tests
+class U_I18N_API MultiplierFormatHandler : public MicroPropsGenerator, public UMemory {
+ public:
+ MultiplierFormatHandler() = default; // WARNING: Leaves object in an unusable state; call setAndChain()
+
+ void setAndChain(const Scale& multiplier, const MicroPropsGenerator* parent);
+
+ void processQuantity(DecimalQuantity& quantity, MicroProps& micros,
+ UErrorCode& status) const U_OVERRIDE;
+
+ private:
+ Scale fMultiplier;
+ const MicroPropsGenerator *fParent;
+};
+
+
+/** Gets a Scale from a DecimalFormatProperties. In Java, defined in RoundingUtils.java */
+static inline Scale scaleFromProperties(const DecimalFormatProperties& properties) {
+ int32_t magnitudeMultiplier = properties.magnitudeMultiplier + properties.multiplierScale;
+ int32_t arbitraryMultiplier = properties.multiplier;
+ if (magnitudeMultiplier != 0 && arbitraryMultiplier != 1) {
+ return Scale::byDoubleAndPowerOfTen(arbitraryMultiplier, magnitudeMultiplier);
+ } else if (magnitudeMultiplier != 0) {
+ return Scale::powerOfTen(magnitudeMultiplier);
+ } else if (arbitraryMultiplier != 1) {
+ return Scale::byDouble(arbitraryMultiplier);
+ } else {
+ return Scale::none();
+ }
+}
+
+
+} // namespace impl
+} // namespace number
+U_NAMESPACE_END
+
+#endif //__SOURCE_NUMBER_MULTIPLIER_H__
+#endif /* #if !UCONFIG_NO_FORMATTING */