OLD | NEW |
1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 26 matching lines...) Expand all Loading... |
37 // correct) 0.3. | 37 // correct) 0.3. |
38 BIGNUM_DTOA_SHORTEST, | 38 BIGNUM_DTOA_SHORTEST, |
39 // Return a fixed number of digits after the decimal point. | 39 // Return a fixed number of digits after the decimal point. |
40 // For instance fixed(0.1, 4) becomes 0.1000 | 40 // For instance fixed(0.1, 4) becomes 0.1000 |
41 // If the input number is big, the output will be big. | 41 // If the input number is big, the output will be big. |
42 BIGNUM_DTOA_FIXED, | 42 BIGNUM_DTOA_FIXED, |
43 // Return a fixed number of digits, no matter what the exponent is. | 43 // Return a fixed number of digits, no matter what the exponent is. |
44 BIGNUM_DTOA_PRECISION | 44 BIGNUM_DTOA_PRECISION |
45 }; | 45 }; |
46 | 46 |
47 // Converts the given double 'v' to ascii. | 47 // Converts the given double 'v' to ASCII. |
48 // The result should be interpreted as buffer * 10^(point-length). | 48 // The result should be interpreted as buffer * 10^(point-length). |
49 // The buffer will be null-terminated. | 49 // The buffer will be null-terminated. |
50 // | 50 // |
51 // The input v must be > 0 and different from NaN, and Infinity. | 51 // The input v must be > 0 and different from NaN, and Infinity. |
52 // | 52 // |
53 // The output depends on the given mode: | 53 // The output depends on the given mode: |
54 // - SHORTEST: produce the least amount of digits for which the internal | 54 // - SHORTEST: produce the least amount of digits for which the internal |
55 // identity requirement is still satisfied. If the digits are printed | 55 // identity requirement is still satisfied. If the digits are printed |
56 // (together with the correct exponent) then reading this number will give | 56 // (together with the correct exponent) then reading this number will give |
57 // 'v' again. The buffer will choose the representation that is closest to | 57 // 'v' again. The buffer will choose the representation that is closest to |
(...skipping 14 matching lines...) Expand all Loading... |
72 // which case the caller has to fill the missing digits with '0's. | 72 // which case the caller has to fill the missing digits with '0's. |
73 // Halfway cases are again rounded up. | 73 // Halfway cases are again rounded up. |
74 // 'BignumDtoa' expects the given buffer to be big enough to hold all digits | 74 // 'BignumDtoa' expects the given buffer to be big enough to hold all digits |
75 // and a terminating null-character. | 75 // and a terminating null-character. |
76 void BignumDtoa(double v, BignumDtoaMode mode, int requested_digits, | 76 void BignumDtoa(double v, BignumDtoaMode mode, int requested_digits, |
77 Vector<char> buffer, int* length, int* point); | 77 Vector<char> buffer, int* length, int* point); |
78 | 78 |
79 } } // namespace v8::internal | 79 } } // namespace v8::internal |
80 | 80 |
81 #endif // V8_BIGNUM_DTOA_H_ | 81 #endif // V8_BIGNUM_DTOA_H_ |
OLD | NEW |