|
1 /* |
|
2 ******************************************************************************* |
|
3 * Copyright (C) 2009-2013, International Business Machines Corporation and * |
|
4 * others. All Rights Reserved. * |
|
5 ******************************************************************************* |
|
6 * |
|
7 * This file contains declarations for the class DecimalFormatStaticSets |
|
8 * |
|
9 * DecimalFormatStaticSets holds the UnicodeSets that are needed for lenient |
|
10 * parsing of decimal and group separators. |
|
11 ******************************************************************************** |
|
12 */ |
|
13 |
|
14 #ifndef DECFMTST_H |
|
15 #define DECFMTST_H |
|
16 |
|
17 #include "unicode/utypes.h" |
|
18 |
|
19 #if !UCONFIG_NO_FORMATTING |
|
20 |
|
21 U_NAMESPACE_BEGIN |
|
22 |
|
23 class UnicodeSet; |
|
24 |
|
25 |
|
26 class DecimalFormatStaticSets : public UMemory |
|
27 { |
|
28 public: |
|
29 // Constructor and Destructor not for general use. |
|
30 // Public to permit access from plain C implementation functions. |
|
31 DecimalFormatStaticSets(UErrorCode &status); |
|
32 ~DecimalFormatStaticSets(); |
|
33 |
|
34 /** |
|
35 * Return a pointer to a lazy-initialized singleton instance of this class. |
|
36 */ |
|
37 static const DecimalFormatStaticSets *getStaticSets(UErrorCode &status); |
|
38 |
|
39 static const UnicodeSet *getSimilarDecimals(UChar32 decimal, UBool strictParse); |
|
40 |
|
41 UnicodeSet *fDotEquivalents; |
|
42 UnicodeSet *fCommaEquivalents; |
|
43 UnicodeSet *fOtherGroupingSeparators; |
|
44 UnicodeSet *fDashEquivalents; |
|
45 |
|
46 UnicodeSet *fStrictDotEquivalents; |
|
47 UnicodeSet *fStrictCommaEquivalents; |
|
48 UnicodeSet *fStrictOtherGroupingSeparators; |
|
49 UnicodeSet *fStrictDashEquivalents; |
|
50 |
|
51 UnicodeSet *fDefaultGroupingSeparators; |
|
52 UnicodeSet *fStrictDefaultGroupingSeparators; |
|
53 |
|
54 UnicodeSet *fMinusSigns; |
|
55 UnicodeSet *fPlusSigns; |
|
56 private: |
|
57 void cleanup(); |
|
58 |
|
59 }; |
|
60 |
|
61 |
|
62 U_NAMESPACE_END |
|
63 |
|
64 #endif // !UCONFIG_NO_FORMATTING |
|
65 #endif // DECFMTST_H |