<ClCompile Include="nfrs.cpp" />
<ClCompile Include="nfrule.cpp" />
<ClCompile Include="nfsubs.cpp" />
+ <ClCompile Include="nounit.cpp" />
+ <ClCompile Include="number_affixutils.cpp" />
+ <ClCompile Include="number_compact.cpp" />
+ <ClCompile Include="number_decimalquantity.cpp" />
+ <ClCompile Include="number_decimfmtprops.cpp" />
+ <ClCompile Include="number_fluent.cpp" />
+ <ClCompile Include="number_formatimpl.cpp" />
+ <ClCompile Include="number_grouping.cpp" />
+ <ClCompile Include="number_integerwidth.cpp" />
+ <ClCompile Include="number_longnames.cpp" />
+ <ClCompile Include="number_modifiers.cpp" />
+ <ClCompile Include="number_notation.cpp" />
+ <ClCompile Include="number_padding.cpp" />
+ <ClCompile Include="number_patternmodifier.cpp" />
+ <ClCompile Include="number_patternstring.cpp" />
+ <ClCompile Include="number_rounding.cpp" />
+ <ClCompile Include="number_scientific.cpp" />
+ <ClCompile Include="number_stringbuilder.cpp" />
<ClCompile Include="numfmt.cpp" />
<ClCompile Include="numsys.cpp" />
<ClCompile Include="olsontz.cpp" />
<ClInclude Include="scriptset.h" />
<ClInclude Include="uspoof_conf.h" />
<ClInclude Include="uspoof_impl.h" />
+ <ClInclude Include="number_affixutils.h" />
+ <ClInclude Include="number_compact.h" />
+ <ClInclude Include="number_decimalquantity.h" />
+ <ClInclude Include="number_decimfmtprops.h" />
+ <ClInclude Include="number_formatimpl.h" />
+ <ClInclude Include="number_longnames.h" />
+ <ClInclude Include="number_modifiers.h" />
+ <ClInclude Include="number_patternmodifier.h" />
+ <ClInclude Include="number_patternstring.h" />
+ <ClInclude Include="number_roundingutils.h" />
+ <ClInclude Include="number_scientific.h" />
+ <ClInclude Include="number_stringbuilder.h" />
+ <ClInclude Include="number_types.h" />
+ <ClInclude Include="number_utils.h" />
+ <CustomBuild Include="unicode\nounit.h">
+ <Command>copy "%(FullPath)" ..\..\include\unicode </Command>
+ <Outputs>..\..\include\unicode\%(Filename)%(Extension);%(Outputs)</Outputs>
+ </CustomBuild>
+ <CustomBuild Include="unicode\numberformatter.h">
+ <Command>copy "%(FullPath)" ..\..\include\unicode </Command>
+ <Outputs>..\..\include\unicode\%(Filename)%(Extension);%(Outputs)</Outputs>
+ </CustomBuild>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="i18n.rc" />
<ClInclude Include="nfsubs.h">
<Filter>formatting</Filter>
</ClInclude>
+
+ <ClInclude Include="number_affixutils.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_compact.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_decimalquantity.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_decimfmtprops.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_formatimpl.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_longnames.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_modifiers.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_patternmodifier.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_patternstring.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_roundingutils.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_scientific.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_stringbuilder.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_types.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+ <ClInclude Include="number_utils.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
+
+
+
<ClInclude Include="olsontz.h">
<Filter>formatting</Filter>
</ClInclude>
<CustomBuild Include="unicode\msgfmt.h">
<Filter>formatting</Filter>
</CustomBuild>
+ <CustomBuild Include="unicode/nounit.h">
+ <Filter>formatting</Filter>
+ </CustomBuild>
+ <CustomBuild Include="/numberformatter.h">
+ <Filter>formatting</Filter>
+ </CustomBuild>
<CustomBuild Include="unicode\numfmt.h">
<Filter>formatting</Filter>
</CustomBuild>
}
}
-int32_t Padder::padAndApply(const impl::Modifier &mod1, const impl::Modifier &mod2,
- impl::NumberStringBuilder &string, int32_t leftIndex, int32_t rightIndex,
+int32_t Padder::padAndApply(const Modifier &mod1, const Modifier &mod2,
+ NumberStringBuilder &string, int32_t leftIndex, int32_t rightIndex,
UErrorCode &status) const {
int32_t modLength = mod1.getCodePointCount(status) + mod2.getCodePointCount(status);
int32_t requiredPadding = fWidth - modLength - string.codePointCount();
return true;
}
-ScientificHandler::ScientificHandler(const Notation *notation, const DecimalFormatSymbols *symbols,
- const MicroPropsGenerator *parent) : fSettings(
- notation->fUnion.scientific), fSymbols(symbols), fParent(parent) {}
+// Note: Visual Studio does not compile this function without full name space. Why?
+icu::number::impl::ScientificHandler::ScientificHandler(const Notation *notation, const DecimalFormatSymbols *symbols,
+ const MicroPropsGenerator *parent) :
+ fSettings(notation->fUnion.scientific), fSymbols(symbols), fParent(parent) {}
void ScientificHandler::processQuantity(DecimalQuantity &quantity, MicroProps µs,
UErrorCode &status) const {
* An interface to FixedDecimal, allowing for other implementations.
* @internal
*/
-class IFixedDecimal {
+class U_I18N_API IFixedDecimal {
public:
virtual ~IFixedDecimal() = default;
const NumberFormatterSettings<UnlocalizedNumberFormatter> &other);
// To give the fluent setters access to this class's constructor:
- friend class NumberFormatterSettings;
+ friend class NumberFormatterSettings<UnlocalizedNumberFormatter>;
// To give NumberFormatter::with() access to this class's constructor:
friend class NumberFormatter;
FormattedNumber formatImpl(impl::NumberFormatterResults *results, UErrorCode &status) const;
// To give the fluent setters access to this class's constructor:
- friend class NumberFormatterSettings;
+ friend class NumberFormatterSettings<UnlocalizedNumberFormatter>;
+ friend class NumberFormatterSettings<LocalizedNumberFormatter>;
// To give UnlocalizedNumberFormatter::locale() access to this class's constructor:
friend class UnlocalizedNumberFormatter;
<ClCompile Include="nmfmapts.cpp" />
<ClCompile Include="nmfmtrt.cpp" />
<ClCompile Include="numberformattesttuple.cpp" />
+ <ClCompile Include="numbertest_affixutils.cpp" />
+ <ClCompile Include="numbertest_api.cpp" />
+ <ClCompile Include="numbertest_decimalquantity.cpp" />
+ <ClCompile Include="numbertest_modifiers.cpp" />
+ <ClCompile Include="numbertest_patternmodifier.cpp" />
+ <ClCompile Include="numbertest_patternstring.cpp" />
+ <ClCompile Include="numbertest_stringbuilder.cpp" />
<ClCompile Include="numberformat2test.cpp" />
<ClCompile Include="numfmtst.cpp" />
<ClCompile Include="numrgts.cpp" />
<ClInclude Include="msfmrgts.h" />
<ClInclude Include="nmfmapts.h" />
<ClInclude Include="nmfmtrt.h" />
+ <ClInclude Include="numbertest.h" />
<ClInclude Include="numberformattesttuple.h" />
<ClInclude Include="numfmtst.h" />
<ClInclude Include="numrgts.h" />
<ClCompile Include="numberformat2test.cpp">
<Filter>formatting</Filter>
</ClCompile>
+ <ClCompile Include="numbertest_affixutils.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
+ <ClCompile Include="numbertest_api.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
+ <ClCompile Include="numbertest_decimalquantity.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
+ <ClCompile Include="numbertest_modifiers.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
+ <ClCompile Include="numbertest_patternmodifier.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
+ <ClCompile Include="numbertest_patternstring.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
+ <ClCompile Include="numbertest_stringbuilder.cpp">
+ <Filter>formatting</Filter>
+ </ClCompile>
<ClCompile Include="numfmtst.cpp">
<Filter>formatting</Filter>
</ClCompile>
<ClInclude Include="numberformattesttuple.h">
<Filter>formatting</Filter>
</ClInclude>
+ <ClInclude Include="numbertest.h">
+ <Filter>formatting</Filter>
+ </ClInclude>
<ClInclude Include="numfmtst.h">
<Filter>formatting</Filter>
</ClInclude>