michael@0: /* michael@0: ******************************************************************************* michael@0: * Copyright (C) 2009-2013, International Business Machines Corporation and * michael@0: * others. All Rights Reserved. * michael@0: ******************************************************************************* michael@0: * michael@0: * This file contains declarations for the class DecimalFormatStaticSets michael@0: * michael@0: * DecimalFormatStaticSets holds the UnicodeSets that are needed for lenient michael@0: * parsing of decimal and group separators. michael@0: ******************************************************************************** michael@0: */ michael@0: michael@0: #ifndef DECFMTST_H michael@0: #define DECFMTST_H michael@0: michael@0: #include "unicode/utypes.h" michael@0: michael@0: #if !UCONFIG_NO_FORMATTING michael@0: michael@0: U_NAMESPACE_BEGIN michael@0: michael@0: class UnicodeSet; michael@0: michael@0: michael@0: class DecimalFormatStaticSets : public UMemory michael@0: { michael@0: public: michael@0: // Constructor and Destructor not for general use. michael@0: // Public to permit access from plain C implementation functions. michael@0: DecimalFormatStaticSets(UErrorCode &status); michael@0: ~DecimalFormatStaticSets(); michael@0: michael@0: /** michael@0: * Return a pointer to a lazy-initialized singleton instance of this class. michael@0: */ michael@0: static const DecimalFormatStaticSets *getStaticSets(UErrorCode &status); michael@0: michael@0: static const UnicodeSet *getSimilarDecimals(UChar32 decimal, UBool strictParse); michael@0: michael@0: UnicodeSet *fDotEquivalents; michael@0: UnicodeSet *fCommaEquivalents; michael@0: UnicodeSet *fOtherGroupingSeparators; michael@0: UnicodeSet *fDashEquivalents; michael@0: michael@0: UnicodeSet *fStrictDotEquivalents; michael@0: UnicodeSet *fStrictCommaEquivalents; michael@0: UnicodeSet *fStrictOtherGroupingSeparators; michael@0: UnicodeSet *fStrictDashEquivalents; michael@0: michael@0: UnicodeSet *fDefaultGroupingSeparators; michael@0: UnicodeSet *fStrictDefaultGroupingSeparators; michael@0: michael@0: UnicodeSet *fMinusSigns; michael@0: UnicodeSet *fPlusSigns; michael@0: private: michael@0: void cleanup(); michael@0: michael@0: }; michael@0: michael@0: michael@0: U_NAMESPACE_END michael@0: michael@0: #endif // !UCONFIG_NO_FORMATTING michael@0: #endif // DECFMTST_H