| OLD | NEW |
| 1 /* | 1 /* |
| 2 ******************************************************************************** | 2 ******************************************************************************** |
| 3 * Copyright (C) 2012, International Business Machines | 3 * Copyright (C) 2012-2014, International Business Machines |
| 4 * Corporation and others. All Rights Reserved. | 4 * Corporation and others. All Rights Reserved. |
| 5 ********************************************************************************
/ | 5 ********************************************************************************
/ |
| 6 | 6 |
| 7 #ifndef DCFMTIMP_H | 7 #ifndef DCFMTIMP_H |
| 8 #define DCFMTIMP_H | 8 #define DCFMTIMP_H |
| 9 | 9 |
| 10 #include "unicode/utypes.h" | 10 #include "unicode/utypes.h" |
| 11 | 11 |
| 12 | 12 |
| 13 #if UCONFIG_FORMAT_FASTPATHS_49 | 13 #if UCONFIG_FORMAT_FASTPATHS_49 |
| 14 | 14 |
| 15 U_NAMESPACE_BEGIN | 15 U_NAMESPACE_BEGIN |
| 16 | 16 |
| 17 enum EDecimalFormatFastpathStatus { | 17 enum EDecimalFormatFastpathStatus { |
| 18 kFastpathNO = 0, | 18 kFastpathNO = 0, |
| 19 kFastpathYES = 1, | 19 kFastpathYES = 1, |
| 20 kFastpathUNKNOWN = 2 /* not yet set */ | 20 kFastpathUNKNOWN = 2, /* not yet set */ |
| 21 kFastpathMAYBE = 3 /* depends on value being formatted. */ |
| 21 }; | 22 }; |
| 22 | 23 |
| 23 /** | 24 /** |
| 24 * Must be smaller than DecimalFormat::fReserved | 25 * Must be smaller than DecimalFormat::fReserved |
| 25 */ | 26 */ |
| 26 struct DecimalFormatInternal { | 27 struct DecimalFormatInternal { |
| 27 uint8_t fFastFormatStatus; | 28 uint8_t fFastFormatStatus; |
| 28 uint8_t fFastParseStatus; | 29 uint8_t fFastParseStatus; |
| 29 | 30 |
| 31 DecimalFormatInternal &operator=(const DecimalFormatInternal& rhs) { |
| 32 fFastParseStatus = rhs.fFastParseStatus; |
| 33 fFastFormatStatus = rhs.fFastFormatStatus; |
| 34 return *this; |
| 35 } |
| 30 #ifdef FMT_DEBUG | 36 #ifdef FMT_DEBUG |
| 31 void dump() const { | 37 void dump() const { |
| 32 printf("DecimalFormatInternal: fFastFormatStatus=%c, fFastParseStatus=%c\n", | 38 printf("DecimalFormatInternal: fFastFormatStatus=%c, fFastParseStatus=%c\n", |
| 33 "NY?"[(int)fFastFormatStatus&3], | 39 "NY?"[(int)fFastFormatStatus&3], |
| 34 "NY?"[(int)fFastParseStatus&3] | 40 "NY?"[(int)fFastParseStatus&3] |
| 35 ); | 41 ); |
| 36 } | 42 } |
| 37 #endif | 43 #endif |
| 38 }; | 44 }; |
| 39 | 45 |
| 40 | 46 |
| 41 | 47 |
| 42 U_NAMESPACE_END | 48 U_NAMESPACE_END |
| 43 | 49 |
| 44 #endif | 50 #endif |
| 45 | 51 |
| 46 #endif | 52 #endif |
| OLD | NEW |