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
8namespace 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).
14double strtod(const char* s00, char** se);
15
16// Convert double to ASCII string. For meaning of parameters
17// see dtoa.cc file.
18char* 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.
22void 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.
26char* g_fmt(char* b, double x);
27
28}  // namespace dmg_fp
29
30#endif  // THIRD_PARTY_DMG_FP_H_
31