Home | History | Annotate | Download | only in src

Lines Matching refs:current

228 bool SubStringEquals(Iterator* current,
231 DCHECK(**current == *substring);
233 ++*current;
234 if (*current == end || **current != *substring) return false;
236 ++*current;
245 Iterator* current,
247 while (*current != end) {
248 if (!unicode_cache->IsWhiteSpaceOrLineTerminator(**current)) return true;
249 ++*current;
255 // Parsing integers with radix 2, 4, 8, 16, 32. Assumes current != end.
258 Iterator current,
262 DCHECK(current != end);
265 while (*current == '0') {
266 ++current;
267 if (current == end) return SignedZero(negative);
276 if (*current >= '0' && *current <= '9' && *current < '0' + radix) {
277 digit = static_cast<char>(*current) - '0';
278 } else if (radix > 10 && *current >= 'a' && *current < 'a' + radix - 10) {
279 digit = static_cast<char>(*current) - 'a' + 10;
280 } else if (radix > 10 && *current >= 'A' && *current < 'A' + radix - 10) {
281 digit = static_cast<char>(*current) - 'A' + 10;
284 !AdvanceToNonspace(unicode_cache, &current, end)) {
309 ++current;
310 if (current == end || !isDigit(*current, radix)) break;
311 zero_tail = zero_tail && *current == '0';
316 AdvanceToNonspace(unicode_cache, &current, end)) {
338 ++current;
339 } while (current != end);
359 Iterator current,
365 if (!AdvanceToNonspace(unicode_cache, &current, end)) {
372 if (*current == '+') {
374 ++current;
375 if (current == end) {
378 } else if (*current == '-') {
379 ++current;
380 if (current == end) {
389 if (*current == '0') {
390 ++current;
391 if (current == end) return SignedZero(negative);
392 if (*current == 'x' || *current == 'X') {
394 ++current;
395 if (current == end) return JunkStringValue();
401 if (*current == '0') {
403 ++current;
404 if (current == end) return SignedZero(negative);
405 if (*current == 'x' || *current == 'X') {
406 ++current;
407 if (current == end) return JunkStringValue();
417 while (*current == '0') {
419 ++current;
420 if (current == end) return SignedZero(negative);
423 if (!leading_zero && !isDigit(*current, radix)) {
431 unicode_cache, current, end, negative, allow_trailing_junk);
434 unicode_cache, current, end, negative, allow_trailing_junk);
437 unicode_cache, current, end, negative, allow_trailing_junk);
441 unicode_cache, current, end, negative, allow_trailing_junk);
445 unicode_cache, current, end, negative, allow_trailing_junk);
459 while (*current >= '0' && *current <= '9') {
464 buffer[buffer_pos++] = static_cast<char>(*current);
466 ++current;
467 if (current == end) break;
471 AdvanceToNonspace(unicode_cache, &current, end)) {
503 if (*current >= '0' && *current < lim_0) {
504 d = *current - '0';
505 } else if (*current >= 'a' && *current < lim_a) {
506 d = *current - 'a' + 10;
507 } else if (*current >= 'A' && *current < lim_A) {
508 d = *current - 'A' + 10;
525 ++current;
526 if (current == end) {
537 AdvanceToNonspace(unicode_cache, &current, end)) {
547 // 1. current == end (other ops are not allowed), current != end.
548 // 2. *current - gets the current character in the sequence.
549 // 3. ++current (advances the position).
552 Iterator current,
558 // 1. Each '++current' statement is followed by check for equality to 'end'.
559 // 2. If AdvanceToNonspace returned false then current == end.
560 // 3. If 'current' becomes be equal to 'end' the function returns or goes to
562 // 4. 'current' is not dereferenced after the 'parsing_done' label.
563 // 5. Code before 'parsing_done' may rely on 'current != end'.
564 if (!AdvanceToNonspace(unicode_cache, &current, end)) {
590 if (*current == '+') {
592 ++current;
593 if (current == end) return JunkStringValue();
595 } else if (*current == '-') {
596 ++current;
597 if (current == end) return JunkStringValue();
602 if (*current == kInfinityString[0]) {
603 if (!SubStringEquals(&current, end, kInfinityString)) {
608 AdvanceToNonspace(unicode_cache, &current, end)) {
617 if (*current == '0') {
618 ++current;
619 if (current == end) return SignedZero(sign == NEGATIVE);
624 if ((flags & ALLOW_HEX) && (*current == 'x' || *current == 'X')) {
625 ++current;
626 if (current == end || !isDigit(*current, 16) || sign != NONE) {
631 current,
637 } else if ((flags & ALLOW_OCTAL) && (*current == 'o' || *current == 'O')) {
638 ++current;
639 if (current == end || !isDigit(*current, 8) || sign != NONE) {
644 current,
650 } else if ((flags & ALLOW_BINARY) && (*current == 'b' || *current == 'B')) {
651 ++current;
652 if (current == end || !isBinaryDigit(*current) || sign != NONE) {
657 current,
664 while (*current == '0') {
665 ++current;
666 if (current == end) return SignedZero(sign == NEGATIVE);
673 while (*current >= '0' && *current <= '9') {
676 buffer[buffer_pos++] = static_cast<char>(*current);
681 nonzero_digit_dropped = nonzero_digit_dropped || *current != '0';
683 octal = octal && *current < '8';
684 ++current;
685 if (current == end) goto parsing_done;
692 if (*current == '.') {
696 ++current;
697 if (current == end) {
709 while (*current == '0') {
710 ++current;
711 if (current == end) return SignedZero(sign == NEGATIVE);
718 while (*current >= '0' && *current <= '9') {
721 buffer[buffer_pos++] = static_cast<char>(*current);
726 nonzero_digit_dropped = nonzero_digit_dropped || *current != '0';
728 ++current;
729 if (current == end) goto parsing_done;
742 if (*current == 'e' || *current == 'E') {
744 ++current;
745 if (current == end) {
753 if (*current == '+' || *current == '-') {
754 sign = static_cast<char>(*current);
755 ++current;
756 if (current == end) {
765 if (current == end || *current < '0' || *current > '9') {
778 int digit = *current - '0';
785 ++current;
786 } while (current != end && *current >= '0' && *current <= '9');
792 AdvanceToNonspace(unicode_cache, &current, end)) {