Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 432 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 443 int significant_digits = 0; | 443 int significant_digits = 0; |
| 444 int insignificant_digits = 0; | 444 int insignificant_digits = 0; |
| 445 bool nonzero_digit_dropped = false; | 445 bool nonzero_digit_dropped = false; |
| 446 bool fractional_part = false; | 446 bool fractional_part = false; |
| 447 | 447 |
| 448 bool sign = false; | 448 bool sign = false; |
| 449 | 449 |
| 450 if (*current == '+') { | 450 if (*current == '+') { |
| 451 // Ignore leading sign; skip following spaces. | 451 // Ignore leading sign; skip following spaces. |
| 452 ++current; | 452 ++current; |
| 453 if (!AdvanceToNonspace(¤t, end)) return JUNK_STRING_VALUE; | 453 if (current == end) return JUNK_STRING_VALUE; |
|
Karl Klose
2010/11/26 12:40:12
Should the comment not be updated to something lik
Lasse Reichstein
2010/11/26 12:46:01
Good catch.
I'll just remove "; skip following spa
| |
| 454 } else if (*current == '-') { | 454 } else if (*current == '-') { |
| 455 ++current; | 455 ++current; |
| 456 if (!AdvanceToNonspace(¤t, end)) return JUNK_STRING_VALUE; | 456 if (current == end) return JUNK_STRING_VALUE; |
| 457 sign = true; | 457 sign = true; |
| 458 } | 458 } |
| 459 | 459 |
| 460 static const char kInfinitySymbol[] = "Infinity"; | 460 static const char kInfinitySymbol[] = "Infinity"; |
| 461 if (*current == kInfinitySymbol[0]) { | 461 if (*current == kInfinitySymbol[0]) { |
| 462 if (!SubStringEquals(¤t, end, kInfinitySymbol)) { | 462 if (!SubStringEquals(¤t, end, kInfinitySymbol)) { |
| 463 return JUNK_STRING_VALUE; | 463 return JUNK_STRING_VALUE; |
| 464 } | 464 } |
| 465 | 465 |
| 466 if (!allow_trailing_junk && AdvanceToNonspace(¤t, end)) { | 466 if (!allow_trailing_junk && AdvanceToNonspace(¤t, end)) { |
| (...skipping 607 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1074 // Allocate result and fill in the parts. | 1074 // Allocate result and fill in the parts. |
| 1075 StringBuilder builder(result_size + 1); | 1075 StringBuilder builder(result_size + 1); |
| 1076 builder.AddSubstring(integer_buffer + integer_pos + 1, integer_part_size); | 1076 builder.AddSubstring(integer_buffer + integer_pos + 1, integer_part_size); |
| 1077 if (decimal_pos > 0) builder.AddCharacter('.'); | 1077 if (decimal_pos > 0) builder.AddCharacter('.'); |
| 1078 builder.AddSubstring(decimal_buffer, decimal_pos); | 1078 builder.AddSubstring(decimal_buffer, decimal_pos); |
| 1079 return builder.Finalize(); | 1079 return builder.Finalize(); |
| 1080 } | 1080 } |
| 1081 | 1081 |
| 1082 | 1082 |
| 1083 } } // namespace v8::internal | 1083 } } // namespace v8::internal |
| OLD | NEW |