1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 *******************************************************************************
5 * Copyright (C) 2010-2014, International Business Machines Corporation and    *
6 * others. All Rights Reserved.                                                *
7 *******************************************************************************
8 */
9 
10 #ifndef FMTABLEIMP_H
11 #define FMTABLEIMP_H
12 
13 #include "digitlst.h"
14 
15 #if !UCONFIG_NO_FORMATTING
16 
17 U_NAMESPACE_BEGIN
18 
19 /**
20  * @internal
21  */
22 struct FmtStackData {
23   DigitList stackDecimalNum;   // 128
24   //CharString stackDecimalStr;  // 64
25   //                         -----
26   //                         192 total
27 };
28 
29 /**
30  * Maximum int64_t value that can be stored in a double without chancing losing precision.
31  *   IEEE doubles have 53 bits of mantissa, 10 bits exponent, 1 bit sign.
32  *   IBM Mainframes have 56 bits of mantissa, 7 bits of base 16 exponent, 1 bit sign.
33  * Define this constant to the smallest value from those for supported platforms.
34  * @internal
35  */
36 static const int64_t MAX_INT64_IN_DOUBLE = 0x001FFFFFFFFFFFFFLL;
37 
38 U_NAMESPACE_END
39 
40 #endif // #if !UCONFIG_NO_FORMATTING
41 #endif
42