OLD | NEW |
1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef THIRD_PARTY_DMG_FP_H_ | 5 #ifndef THIRD_PARTY_DMG_FP_H_ |
6 #define THIRD_PARTY_DMG_FP_H_ | 6 #define THIRD_PARTY_DMG_FP_H_ |
7 | 7 |
8 namespace dmg_fp { | 8 namespace dmg_fp { |
9 | 9 |
10 // Return a nearest machine number to the input decimal | 10 // Return a nearest machine number to the input decimal |
11 // string (or set errno to ERANGE). With IEEE arithmetic, ties are | 11 // string (or set errno to ERANGE). With IEEE arithmetic, ties are |
12 // broken by the IEEE round-even rule. Otherwise ties are broken by | 12 // broken by the IEEE round-even rule. Otherwise ties are broken by |
13 // biased rounding (add half and chop). | 13 // biased rounding (add half and chop). |
14 double strtod(const char* s00, char** se); | 14 double strtod(const char* s00, char** se); |
15 | 15 |
16 // Convert double to ASCII string. For meaning of parameters | 16 // Convert double to ASCII string. For meaning of parameters |
17 // see dtoa.cc file. | 17 // see dtoa.cc file. |
18 char* dtoa(double d, int mode, int ndigits, | 18 char* dtoa(double d, int mode, int ndigits, |
19 int* decpt, int* sign, char** rve); | 19 int* decpt, int* sign, char** rve); |
20 | 20 |
21 // Must be used to free values returned by dtoa. | 21 // Must be used to free values returned by dtoa. |
22 void freedtoa(char* s); | 22 void freedtoa(char* s); |
23 | 23 |
24 // Store the closest decimal approximation to x in b. | 24 // Store the closest decimal approximation to x in b (null terminated). |
| 25 // Returns a pointer to b. It is sufficient for |b| to be 32 characters. |
25 char* g_fmt(char* b, double x); | 26 char* g_fmt(char* b, double x); |
26 | 27 |
27 } // namespace dmg_fp | 28 } // namespace dmg_fp |
28 | 29 |
29 #endif // THIRD_PARTY_DMG_FP_H_ | 30 #endif // THIRD_PARTY_DMG_FP_H_ |
OLD | NEW |