Lines Matching refs:buffer

35 inline void GrisuRound(char* buffer, int len, uint64_t delta, uint64_t rest, uint64_t ten_kappa, ui…  in GrisuRound()  argument
39 buffer[len - 1]--; in GrisuRound()
60 inline void DigitGen(const DiyFp& W, const DiyFp& Mp, uint64_t delta, char* buffer, int* len, int* … in DigitGen() argument
88 buffer[(*len)++] = static_cast<char>('0' + static_cast<char>(d)); in DigitGen()
93 GrisuRound(buffer, *len, delta, tmp, kPow10[kappa] << -one.e, wp_w.f); in DigitGen()
104 buffer[(*len)++] = static_cast<char>('0' + d); in DigitGen()
110 GrisuRound(buffer, *len, delta, p2, one.f, wp_w.f * (index < 20 ? kPow10[index] : 0)); in DigitGen()
116 inline void Grisu2(double value, char* buffer, int* length, int* K) { in Grisu2() argument
127 DigitGen(W, Wp, Wp.f - Wm.f, buffer, length, K); in Grisu2()
130 inline char* WriteExponent(int K, char* buffer) { in WriteExponent() argument
132 *buffer++ = '-'; in WriteExponent()
137 *buffer++ = static_cast<char>('0' + static_cast<char>(K / 100)); in WriteExponent()
140 *buffer++ = d[0]; in WriteExponent()
141 *buffer++ = d[1]; in WriteExponent()
145 *buffer++ = d[0]; in WriteExponent()
146 *buffer++ = d[1]; in WriteExponent()
149 *buffer++ = static_cast<char>('0' + static_cast<char>(K)); in WriteExponent()
151 return buffer; in WriteExponent()
154 inline char* Prettify(char* buffer, int length, int k, int maxDecimalPlaces) { in Prettify() argument
160 buffer[i] = '0'; in Prettify()
161 buffer[kk] = '.'; in Prettify()
162 buffer[kk + 1] = '0'; in Prettify()
163 return &buffer[kk + 2]; in Prettify()
167 std::memmove(&buffer[kk + 1], &buffer[kk], static_cast<size_t>(length - kk)); in Prettify()
168 buffer[kk] = '.'; in Prettify()
173 if (buffer[i] != '0') in Prettify()
174 return &buffer[i + 1]; in Prettify()
175 return &buffer[kk + 2]; // Reserve one zero in Prettify()
178 return &buffer[length + 1]; in Prettify()
183 std::memmove(&buffer[offset], &buffer[0], static_cast<size_t>(length)); in Prettify()
184 buffer[0] = '0'; in Prettify()
185 buffer[1] = '.'; in Prettify()
187 buffer[i] = '0'; in Prettify()
192 if (buffer[i] != '0') in Prettify()
193 return &buffer[i + 1]; in Prettify()
194 return &buffer[3]; // Reserve one zero in Prettify()
197 return &buffer[length + offset]; in Prettify()
201 buffer[0] = '0'; in Prettify()
202 buffer[1] = '.'; in Prettify()
203 buffer[2] = '0'; in Prettify()
204 return &buffer[3]; in Prettify()
208 buffer[1] = 'e'; in Prettify()
209 return WriteExponent(kk - 1, &buffer[2]); in Prettify()
213 std::memmove(&buffer[2], &buffer[1], static_cast<size_t>(length - 1)); in Prettify()
214 buffer[1] = '.'; in Prettify()
215 buffer[length + 1] = 'e'; in Prettify()
216 return WriteExponent(kk - 1, &buffer[0 + length + 2]); in Prettify()
220 inline char* dtoa(double value, char* buffer, int maxDecimalPlaces = 324) {
225 *buffer++ = '-'; // -0.0, Issue #289
226 buffer[0] = '0';
227 buffer[1] = '.';
228 buffer[2] = '0';
229 return &buffer[3];
233 *buffer++ = '-';
237 Grisu2(value, buffer, &length, &K);
238 return Prettify(buffer, length, K, maxDecimalPlaces);