00001 #include "util/float_to_string.hh"
00002
00003 #include "util/double-conversion/double-conversion.h"
00004 #include "util/double-conversion/utils.h"
00005
00006 namespace util {
00007 namespace {
00008 const double_conversion::DoubleToStringConverter kConverter(double_conversion::DoubleToStringConverter::NO_FLAGS, "inf", "NaN", 'e', -6, 21, 6, 0);
00009 }
00010
00011 char *ToString(double value, char *to) {
00012 double_conversion::StringBuilder builder(to, ToStringBuf<double>::kBytes);
00013 kConverter.ToShortest(value, &builder);
00014 return &to[builder.position()];
00015 }
00016
00017 char *ToString(float value, char *to) {
00018 double_conversion::StringBuilder builder(to, ToStringBuf<float>::kBytes);
00019 kConverter.ToShortestSingle(value, &builder);
00020 return &to[builder.position()];
00021 }
00022
00023 }