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
3 // found in the LICENSE file.
4 
5 #ifndef THIRD_PARTY_DMG_FP_H_
6 #define THIRD_PARTY_DMG_FP_H_
7 
8 namespace dmg_fp {
9 
10 // Return a nearest machine number to the input decimal
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
13 // biased rounding (add half and chop).
14 double strtod(const char* s00, char** se);
15 
16 // Convert double to ASCII string. For meaning of parameters
17 // see dtoa.cc file.
18 char* dtoa(double d, int mode, int ndigits,
19            int* decpt, int* sign, char** rve);
20 
21 // Must be used to free values returned by dtoa.
22 void freedtoa(char* s);
23 
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.
26 char* g_fmt(char* b, double x);
27 
28 }  // namespace dmg_fp
29 
30 #endif  // THIRD_PARTY_DMG_FP_H_
31