Lines Matching refs:buffer

124                                     Vector<char> buffer, int* length) {
126 buffer[(*length) + i] = '0' + number % 10;
133 static void FillDigits32(uint32_t number, Vector<char> buffer, int* length) {
139 buffer[(*length) + number_length] = '0' + digit;
146 char tmp = buffer[i];
147 buffer[i] = buffer[j];
148 buffer[j] = tmp;
157 Vector<char> buffer, int* length) {
165 FillDigits32FixedLength(part0, 3, buffer, length);
166 FillDigits32FixedLength(part1, 7, buffer, length);
167 FillDigits32FixedLength(part2, 7, buffer, length);
171 static void FillDigits64(uint64_t number, Vector<char> buffer, int* length) {
180 FillDigits32(part0, buffer, length);
181 FillDigits32FixedLength(part1, 7, buffer, length);
182 FillDigits32FixedLength(part2, 7, buffer, length);
184 FillDigits32(part1, buffer, length);
185 FillDigits32FixedLength(part2, 7, buffer, length);
187 FillDigits32(part2, buffer, length);
192 static void RoundUp(Vector<char> buffer, int* length, int* decimal_point) {
193 // An empty buffer represents 0.
195 buffer[0] = '1';
202 buffer[(*length) - 1]++;
204 if (buffer[i] != '0' + 10) {
207 buffer[i] = '0';
208 buffer[i - 1]++;
215 if (buffer[0] == '0' + 10) {
216 buffer[0] = '1';
227 // The buffer holds the result.
230 // might be updated. If this function generates the digits 99 and the buffer
231 // already contained "199" (thus yielding a buffer of "19999") then a
232 // rounding-up will change the contents of the buffer to "20000".
234 int fractional_count, Vector<char> buffer,
259 buffer[*length] = '0' + digit;
265 RoundUp(buffer, length, decimal_point);
280 buffer[*length] = '0' + digit;
284 RoundUp(buffer, length, decimal_point);
292 static void TrimZeros(Vector<char> buffer, int* length, int* decimal_point) {
293 while (*length > 0 && buffer[(*length) - 1] == '0') {
297 while (first_non_zero < *length && buffer[first_non_zero] == '0') {
302 buffer[i - first_non_zero] = buffer[i];
312 Vector<char> buffer,
363 FillDigits32(quotient, buffer, length);
364 FillDigits64FixedLength(remainder, divisor_power, buffer, length);
369 FillDigits64(significand, buffer, length);
376 FillDigits64(integrals, buffer, length);
378 FillDigits32(static_cast<uint32_t>(integrals), buffer, length);
382 buffer, length, decimal_point);
387 buffer[0] = '\0';
393 buffer, length, decimal_point);
395 TrimZeros(buffer, length, decimal_point);
396 buffer[*length] = '\0';