+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
/*
*******************************************************************************
* Copyright (C) 1997-2015, International Business Machines
#include "unicode/utypes.h"
#include "unicode/uobject.h"
#include "unicode/unistr.h"
-#include "putilimp.h"
U_NAMESPACE_BEGIN
UChar getDecimalPoint() const { return decimalPoint; }
- double getDivisor() const { return uprv_pow(radix, exponent); }
+ int64_t getDivisor() const;
void doFormat(int64_t number, UnicodeString& toAppendTo, int32_t pos, int32_t recursionCount, UErrorCode& status) const;
void doFormat(double number, UnicodeString& toAppendTo, int32_t pos, int32_t recursionCount, UErrorCode& status) const;
ParsePosition& pos,
UBool isFractional,
double upperBound,
+ uint32_t nonNumericalExecutedRuleMask,
Formattable& result,
UBool isDecimFmtParseable=TRUE) const;
- UBool shouldRollBack(double number) const;
+ UBool shouldRollBack(int64_t number) const;
void _appendRuleText(UnicodeString& result) const;
int32_t indexOfAnyRulePrefix() const;
double matchToDelimiter(const UnicodeString& text, int32_t startPos, double baseValue,
const UnicodeString& delimiter, ParsePosition& pp, const NFSubstitution* sub,
+ uint32_t nonNumericalExecutedRuleMask,
double upperBound) const;
void stripPrefix(UnicodeString& text, const UnicodeString& prefix, ParsePosition& pp) const;
int32_t radix;
int16_t exponent;
UChar decimalPoint;
- UnicodeString ruleText;
+ UnicodeString fRuleText;
NFSubstitution* sub1;
NFSubstitution* sub2;
const RuleBasedNumberFormat* formatter;