/*
******************************************************************************
-* Copyright (C) 1997-2007, International Business Machines
+* Copyright (C) 1997-2014, International Business Machines
* Corporation and others. All Rights Reserved.
******************************************************************************
* file name: nfsubs.h
* rule text begins (this value is added to this substitution's
* position to determine exactly where to insert the new text)
*/
- virtual void doSubstitution(int64_t number, UnicodeString& toInsertInto, int32_t pos) const;
+ virtual void doSubstitution(int64_t number, UnicodeString& toInsertInto, int32_t pos, UErrorCode& status) const;
/**
* Performs a mathematical operation on the number, formats it using
* rule text begins (this value is added to this substitution's
* position to determine exactly where to insert the new text)
*/
- virtual void doSubstitution(double number, UnicodeString& toInsertInto, int32_t pos) const;
+ virtual void doSubstitution(double number, UnicodeString& toInsertInto, int32_t pos, UErrorCode& status) const;
protected:
/**
*/
virtual UBool isModulusSubstitution() const;
+ /**
+ * @return true if this is a decimal format-only substitution
+ */
+ virtual UBool isDecimalFormatSubstitutionOnly() const;
+
+ /**
+ * @return true if this substitution only points to another ruleSet (no numberFormat)
+ */
+ virtual UBool isRuleSetSubstitutionOnly() const;
+
private:
NFSubstitution(const NFSubstitution &other); // forbid copying of this class
NFSubstitution &operator=(const NFSubstitution &other); // forbid copying of this class