]> granicus.if.org Git - icu/commitdiff
ICU-13177 Windows build, add U_I18N_API to exported classes. Builds, some warnings...
authorAndy Heninger <andy.heninger@gmail.com>
Wed, 27 Sep 2017 18:50:44 +0000 (18:50 +0000)
committerAndy Heninger <andy.heninger@gmail.com>
Wed, 27 Sep 2017 18:50:44 +0000 (18:50 +0000)
X-SVN-Rev: 40482

icu4c/source/i18n/number_affixutils.h
icu4c/source/i18n/number_decimalquantity.h
icu4c/source/i18n/number_decimfmtprops.h
icu4c/source/i18n/number_modifiers.h
icu4c/source/i18n/number_patternmodifier.h
icu4c/source/i18n/number_patternstring.h
icu4c/source/i18n/number_scientific.h
icu4c/source/i18n/number_stringbuilder.h
icu4c/source/i18n/number_types.h
icu4c/source/i18n/unicode/numberformatter.h

index 9f169fe3a1fe4928125d7f1bcbac3248517c5c4e..1e3c30d27194a6fb2ff4d116a9a88f302d98cc64 100644 (file)
@@ -89,7 +89,7 @@ class SymbolProvider {
  * }
  * </pre>
  */
-class AffixUtils {
+class U_I18N_API AffixUtils {
 
   public:
 
index dbba35bf8e7df0127f69a63277438cab75c5d14e..86a5c2d56fbf229469f62ae5aa40c3f6d9224bb3 100644 (file)
@@ -26,7 +26,7 @@ namespace impl {
  *
  * <p>Java has multiple implementations for testing, but C++ has only one implementation.
  */
-class DecimalQuantity : public IFixedDecimal, public UMemory {
+class U_I18N_API DecimalQuantity : public IFixedDecimal, public UMemory {
   public:
     /** Copy constructor. */
     DecimalQuantity(const DecimalQuantity &other);
index e5f405aa0a18653d43fae7b097e88c2a64d2cb8b..3afd0078de9ca9cacab6e18b03461420cb0c3cca 100644 (file)
@@ -28,7 +28,7 @@ struct CurrencyPluralInfoWrapper {
     }
 };
 
-struct DecimalFormatProperties {
+struct U_I18N_API DecimalFormatProperties {
 
   public:
     NullableValue<UNumberCompactStyle> compactStyle;
index 2701f1cf2d72ff6b37bcab450266c4633919df69..9d2f1975b9fbc98b8e122961fa388f0e5940852a 100644 (file)
@@ -20,7 +20,7 @@ namespace impl {
  * The canonical implementation of {@link Modifier}, containing a prefix and suffix string.
  * TODO: This is not currently being used by real code and could be removed.
  */
-class ConstantAffixModifier : public Modifier, public UObject {
+class U_I18N_API ConstantAffixModifier : public Modifier, public UObject {
   public:
     ConstantAffixModifier(const UnicodeString &prefix, const UnicodeString &suffix, Field field,
                           bool strong)
@@ -46,7 +46,7 @@ class ConstantAffixModifier : public Modifier, public UObject {
  * The second primary implementation of {@link Modifier}, this one consuming a {@link SimpleFormatter}
  * pattern.
  */
-class SimpleModifier : public Modifier, public UMemory {
+class U_I18N_API SimpleModifier : public Modifier, public UMemory {
   public:
     SimpleModifier(const SimpleFormatter &simpleFormatter, Field field, bool strong);
 
@@ -99,7 +99,7 @@ class SimpleModifier : public Modifier, public UMemory {
  * An implementation of {@link Modifier} that allows for multiple types of fields in the same modifier. Constructed
  * based on the contents of two {@link NumberStringBuilder} instances (one for the prefix, one for the suffix).
  */
-class ConstantMultiFieldModifier : public Modifier, public UMemory {
+class U_I18N_API ConstantMultiFieldModifier : public Modifier, public UMemory {
   public:
     ConstantMultiFieldModifier(const NumberStringBuilder &prefix, const NumberStringBuilder &suffix,
                                bool strong) : fPrefix(prefix), fSuffix(suffix), fStrong(strong) {}
@@ -122,7 +122,7 @@ class ConstantMultiFieldModifier : public Modifier, public UMemory {
 };
 
 /** Identical to {@link ConstantMultiFieldModifier}, but supports currency spacing. */
-class CurrencySpacingEnabledModifier : public ConstantMultiFieldModifier {
+class U_I18N_API CurrencySpacingEnabledModifier : public ConstantMultiFieldModifier {
   public:
     /** Safe code path */
     CurrencySpacingEnabledModifier(const NumberStringBuilder &prefix, const NumberStringBuilder &suffix,
@@ -164,7 +164,7 @@ class CurrencySpacingEnabledModifier : public ConstantMultiFieldModifier {
 };
 
 /** A Modifier that does not do anything. */
-class EmptyModifier : public Modifier, public UMemory {
+class U_I18N_API EmptyModifier : public Modifier, public UMemory {
   public:
     explicit EmptyModifier(bool isStrong) : fStrong(isStrong) {}
 
@@ -199,7 +199,7 @@ class EmptyModifier : public Modifier, public UMemory {
  * A ParameterizedModifier by itself is NOT a Modifier. Rather, it wraps a data structure containing two or more
  * Modifiers and returns the modifier appropriate for the current situation.
  */
-class ParameterizedModifier : public UMemory {
+class U_I18N_API ParameterizedModifier : public UMemory {
   public:
     // NOTE: mods is zero-initialized (to nullptr)
     ParameterizedModifier() : mods() {
index 0dd26b94c26ff75c3dc6334385a924b1ed8f6c36..45f9dc352eab120e1af8515f1bfaa3bc42b29475 100644 (file)
@@ -16,7 +16,7 @@ U_NAMESPACE_BEGIN
 namespace number {
 namespace impl {
 
-class ImmutablePatternModifier : public MicroPropsGenerator {
+class U_I18N_API ImmutablePatternModifier : public MicroPropsGenerator {
   public:
     ImmutablePatternModifier(ParameterizedModifier *pm, const PluralRules *rules,
                              const MicroPropsGenerator *parent);
@@ -52,7 +52,7 @@ class ImmutablePatternModifier : public MicroPropsGenerator {
  * {@link MutablePatternModifier#createImmutable}, in effect treating this instance as a builder for the immutable
  * variant.
  */
-class MutablePatternModifier
+class U_I18N_API MutablePatternModifier
         : public MicroPropsGenerator, public Modifier, public SymbolProvider, public CharSequence {
   public:
 
index 29fd2d6edd70ce18645518e617be30d9d047eca8..03f08cdf3415a65a439d6b1707c38ba133e0fb5c 100644 (file)
@@ -52,7 +52,7 @@ struct ParsedSubpatternInfo {
     Endpoints paddingEndpoints;
 };
 
-struct ParsedPatternInfo : public AffixPatternProvider {
+struct U_I18N_API ParsedPatternInfo : public AffixPatternProvider {
     UnicodeString pattern;
     ParsedSubpatternInfo positive;
     ParsedSubpatternInfo negative;
@@ -130,7 +130,7 @@ struct ParsedPatternInfo : public AffixPatternProvider {
     friend class PatternParser;
 };
 
-class PatternParser {
+class U_I18N_API PatternParser {
   public:
     /**
      * Runs the recursive descent parser on the given pattern string, returning a data structure with raw information
@@ -196,7 +196,7 @@ class PatternParser {
                             IgnoreRounding _ignoreRounding, UErrorCode &status);
 };
 
-class PatternStringUtils {
+class U_I18N_API PatternStringUtils {
   public:
     /**
      * Creates a pattern string from a property bag.
index 6b43a484a834d98f8826c92290aad4efc9b4046b..6bdd24aa3c3edcf08b713606b95df51f3931eadf 100644 (file)
@@ -13,7 +13,7 @@ namespace impl {
 // Forward-declare
 class ScientificHandler;
 
-class ScientificModifier : public UMemory, public Modifier {
+class U_I18N_API ScientificModifier : public UMemory, public Modifier {
   public:
     ScientificModifier();
 
@@ -33,7 +33,7 @@ class ScientificModifier : public UMemory, public Modifier {
     const ScientificHandler *fHandler;
 };
 
-class ScientificHandler : public UMemory, public MicroPropsGenerator, public MultiplierProducer {
+class U_I18N_API ScientificHandler : public UMemory, public MicroPropsGenerator, public MultiplierProducer {
   public:
     ScientificHandler(const Notation *notation, const DecimalFormatSymbols *symbols,
                       const MicroPropsGenerator *parent);
index ea5da12ab3ca08c4416f9cf011430a4ede42be18..6be4959d8d4cf5107b82ed3c782021f5ab030180 100644 (file)
@@ -16,7 +16,7 @@
 U_NAMESPACE_BEGIN namespace number {
 namespace impl {
 
-class NumberStringBuilder : public UMemory {
+class U_I18N_API NumberStringBuilder : public UMemory {
   private:
     static const int32_t DEFAULT_CAPACITY = 40;
 
index eaedb00ad0e11e70b471fdffe8c213ef5d5109f4..f84b6a93cad93699a9d51effb5304a09f6da4adc 100644 (file)
@@ -116,7 +116,7 @@ public:
     virtual UnicodeString toUnicodeString() const = 0;
 };
 
-class AffixPatternProvider {
+class U_I18N_API AffixPatternProvider {
   public:
     static const int32_t AFFIX_PLURAL_MASK = 0xff;
     static const int32_t AFFIX_PREFIX = 0x100;
@@ -148,7 +148,7 @@ class AffixPatternProvider {
  * A Modifier is usually immutable, except in cases such as {@link MurkyModifier}, which are mutable for performance
  * reasons.
  */
-class Modifier {
+class U_I18N_API Modifier {
   public:
     virtual ~Modifier() = default;
 
@@ -208,7 +208,7 @@ class Modifier {
  * @author sffc
  *
  */
-class MicroPropsGenerator {
+class U_I18N_API MicroPropsGenerator {
   public:
     virtual ~MicroPropsGenerator() = default;
 
index 097d47423cdf98fd206a30af3a6080e29011a3a9..5b6719fc0fbc27c098169fbb7c9ed95255b52d4a 100644 (file)
@@ -324,7 +324,7 @@ typedef Notation SimpleNotation;
  *
  * @draft ICU 60
  */
-class Notation : public UMemory {
+class U_I18N_API Notation : public UMemory {
   public:
     /**
      * Print the number using scientific notation (also known as scientific form, standard index form, or standard form
@@ -526,7 +526,7 @@ class Notation : public UMemory {
  *
  * @draft ICU 60
  */
-class ScientificNotation : public Notation {
+class U_I18N_API ScientificNotation : public Notation {
   public:
     /**
      * Sets the minimum number of digits to show in the exponent of scientific notation, padding with zeros if
@@ -576,7 +576,7 @@ typedef Rounder DigitRounder;
  *
  * @draft ICU 60
  */
-class Rounder : public UMemory {
+class U_I18N_API Rounder : public UMemory {
 
   public:
     /**
@@ -889,7 +889,7 @@ class Rounder : public UMemory {
  *
  * @draft ICU 60
  */
-class FractionRounder : public Rounder {
+class U_I18N_API FractionRounder : public Rounder {
   public:
     /**
      * Ensure that no less than this number of significant digits are retained when rounding according to fraction
@@ -945,7 +945,7 @@ class FractionRounder : public Rounder {
  *
  * @draft ICU 60
  */
-class CurrencyRounder : public Rounder {
+class U_I18N_API CurrencyRounder : public Rounder {
   public:
     /**
       * Associates a currency with this rounding strategy.
@@ -983,7 +983,7 @@ class CurrencyRounder : public Rounder {
  *
  * @draft ICU 60
  */
-class IncrementRounder : public Rounder {
+class U_I18N_API IncrementRounder : public Rounder {
   public:
     /**
      * Specifies the minimum number of fraction digits to render after the decimal separator, padding with zeros if
@@ -1012,7 +1012,7 @@ class IncrementRounder : public Rounder {
 /**
  * @internal This API is a technical preview.  It is likely to change in an upcoming release.
  */
-class Grouper : public UMemory {
+class U_I18N_API Grouper : public UMemory {
   public:
     /**
      * @internal This API is a technical preview.  It is likely to change in an upcoming release.
@@ -1065,7 +1065,7 @@ class Grouper : public UMemory {
  * @draft ICU 60
  * @see NumberFormatter
  */
-class IntegerWidth : public UMemory {
+class U_I18N_API IntegerWidth : public UMemory {
   public:
     /**
      * Pad numbers at the beginning with zeros to guarantee a certain number of numerals before the decimal separator.
@@ -1149,7 +1149,7 @@ namespace impl {
 static uint32_t DEFAULT_THRESHOLD = 3;
 
 /** @internal */
-class SymbolsWrapper : public UMemory {
+class U_I18N_API SymbolsWrapper : public UMemory {
   public:
     /** @internal */
     SymbolsWrapper() : fType(SYMPTR_NONE), fPtr{nullptr} {}
@@ -1227,7 +1227,7 @@ class SymbolsWrapper : public UMemory {
 };
 
 /** @internal */
-class Padder : public UMemory {
+class U_I18N_API Padder : public UMemory {
   public:
     /** @internal */
     static Padder none();
@@ -1284,7 +1284,7 @@ class Padder : public UMemory {
 };
 
 /** @internal */
-struct MacroProps : public UMemory {
+struct U_I18N_API MacroProps : public UMemory {
     /** @internal */
     Notation notation;
 
@@ -1343,7 +1343,7 @@ struct MacroProps : public UMemory {
  * {@link UnlocalizedNumberFormatter} and {@link LocalizedNumberFormatter}.
  */
 template<typename Derived>
-class NumberFormatterSettings {
+class U_I18N_API NumberFormatterSettings {
   public:
     /**
      * Specifies the notation style (simple, scientific, or compact) for rendering numbers.
@@ -1737,7 +1737,7 @@ class NumberFormatterSettings {
  * @see NumberFormatter
  * @draft ICU 60
  */
-class UnlocalizedNumberFormatter
+class U_I18N_API UnlocalizedNumberFormatter
         : public NumberFormatterSettings<UnlocalizedNumberFormatter>, public UMemory {
 
   public:
@@ -1766,7 +1766,7 @@ class UnlocalizedNumberFormatter
  * @see NumberFormatter
  * @draft ICU 60
  */
-class LocalizedNumberFormatter
+class U_I18N_API LocalizedNumberFormatter
         : public NumberFormatterSettings<LocalizedNumberFormatter>, public UMemory {
   public:
     /**
@@ -1854,7 +1854,7 @@ class LocalizedNumberFormatter
  *
  * @draft ICU 60
  */
-class FormattedNumber : public UMemory {
+class U_I18N_API FormattedNumber : public UMemory {
   public:
     /**
      * Returns a UnicodeString representation of the the formatted number.
@@ -1932,7 +1932,7 @@ class FormattedNumber : public UMemory {
  *
  * @draft ICU 60
  */
-class NumberFormatter final {
+class U_I18N_API NumberFormatter final {
   public:
     /**
      * Call this method at the beginning of a NumberFormatter fluent chain in which the locale is not currently known at