Lines Matching refs:current

101 bool SubStringEquals(Iterator* current,
104 DCHECK(**current == *substring);
106 ++*current;
107 if (*current == end || **current != *substring) return false;
109 ++*current;
118 Iterator* current,
120 while (*current != end) {
121 if (!unicode_cache->IsWhiteSpaceOrLineTerminator(**current)) return true;
122 ++*current;
128 // Parsing integers with radix 2, 4, 8, 16, 32. Assumes current != end.
131 Iterator current,
135 DCHECK(current != end);
138 while (*current == '0') {
139 ++current;
140 if (current == end) return SignedZero(negative);
149 if (*current >= '0' && *current <= '9' && *current < '0' + radix) {
150 digit = static_cast<char>(*current) - '0';
151 } else if (radix > 10 && *current >= 'a' && *current < 'a' + radix - 10) {
152 digit = static_cast<char>(*current) - 'a' + 10;
153 } else if (radix > 10 && *current >= 'A' && *current < 'A' + radix - 10) {
154 digit = static_cast<char>(*current) - 'A' + 10;
157 !AdvanceToNonspace(unicode_cache, &current, end)) {
182 ++current;
183 if (current == end || !isDigit(*current, radix)) break;
184 zero_tail = zero_tail && *current == '0';
189 AdvanceToNonspace(unicode_cache, &current, end)) {
211 ++current;
212 } while (current != end);
232 Iterator current,
238 if (!AdvanceToNonspace(unicode_cache, &current, end)) {
245 if (*current == '+') {
247 ++current;
248 if (current == end) {
251 } else if (*current == '-') {
252 ++current;
253 if (current == end) {
262 if (*current == '0') {
263 ++current;
264 if (current == end) return SignedZero(negative);
265 if (*current == 'x' || *current == 'X') {
267 ++current;
268 if (current == end) return JunkStringValue();
274 if (*current == '0') {
276 ++current;
277 if (current == end) return SignedZero(negative);
278 if (*current == 'x' || *current == 'X') {
279 ++current;
280 if (current == end) return JunkStringValue();
290 while (*current == '0') {
292 ++current;
293 if (current == end) return SignedZero(negative);
296 if (!leading_zero && !isDigit(*current, radix)) {
304 unicode_cache, current, end, negative, allow_trailing_junk);
307 unicode_cache, current, end, negative, allow_trailing_junk);
310 unicode_cache, current, end, negative, allow_trailing_junk);
314 unicode_cache, current, end, negative, allow_trailing_junk);
318 unicode_cache, current, end, negative, allow_trailing_junk);
332 while (*current >= '0' && *current <= '9') {
337 buffer[buffer_pos++] = static_cast<char>(*current);
339 ++current;
340 if (current == end) break;
344 AdvanceToNonspace(unicode_cache, &current, end)) {
376 if (*current >= '0' && *current < lim_0) {
377 d = *current - '0';
378 } else if (*current >= 'a' && *current < lim_a) {
379 d = *current - 'a' + 10;
380 } else if (*current >= 'A' && *current < lim_A) {
381 d = *current - 'A' + 10;
398 ++current;
399 if (current == end) {
410 AdvanceToNonspace(unicode_cache, &current, end)) {
420 // 1. current == end (other ops are not allowed), current != end.
421 // 2. *current - gets the current character in the sequence.
422 // 3. ++current (advances the position).
425 Iterator current,
431 // 1. Each '++current' statement is followed by check for equality to 'end'.
432 // 2. If AdvanceToNonspace returned false then current == end.
433 // 3. If 'current' becomes be equal to 'end' the function returns or goes to
435 // 4. 'current' is not dereferenced after the 'parsing_done' label.
436 // 5. Code before 'parsing_done' may rely on 'current != end'.
437 if (!AdvanceToNonspace(unicode_cache, &current, end)) {
463 if (*current == '+') {
465 ++current;
466 if (current == end) return JunkStringValue();
468 } else if (*current == '-') {
469 ++current;
470 if (current == end) return JunkStringValue();
475 if (*current == kInfinityString[0]) {
476 if (!SubStringEquals(&current, end, kInfinityString)) {
481 AdvanceToNonspace(unicode_cache, &current, end)) {
490 if (*current == '0') {
491 ++current;
492 if (current == end) return SignedZero(sign == NEGATIVE);
497 if ((flags & ALLOW_HEX) && (*current == 'x' || *current == 'X')) {
498 ++current;
499 if (current == end || !isDigit(*current, 16) || sign != NONE) {
504 current,
510 } else if ((flags & ALLOW_OCTAL) && (*current == 'o' || *current == 'O')) {
511 ++current;
512 if (current == end || !isDigit(*current, 8) || sign != NONE) {
517 current,
523 } else if ((flags & ALLOW_BINARY) && (*current == 'b' || *current == 'B')) {
524 ++current;
525 if (current == end || !isBinaryDigit(*current) || sign != NONE) {
530 current,
537 while (*current == '0') {
538 ++current;
539 if (current == end) return SignedZero(sign == NEGATIVE);
546 while (*current >= '0' && *current <= '9') {
549 buffer[buffer_pos++] = static_cast<char>(*current);
554 nonzero_digit_dropped = nonzero_digit_dropped || *current != '0';
556 octal = octal && *current < '8';
557 ++current;
558 if (current == end) goto parsing_done;
565 if (*current == '.') {
569 ++current;
570 if (current == end) {
582 while (*current == '0') {
583 ++current;
584 if (current == end) return SignedZero(sign == NEGATIVE);
591 while (*current >= '0' && *current <= '9') {
594 buffer[buffer_pos++] = static_cast<char>(*current);
599 nonzero_digit_dropped = nonzero_digit_dropped || *current != '0';
601 ++current;
602 if (current == end) goto parsing_done;
615 if (*current == 'e' || *current == 'E') {
617 ++current;
618 if (current == end) {
626 if (*current == '+' || *current == '-') {
627 sign = static_cast<char>(*current);
628 ++current;
629 if (current == end) {
638 if (current == end || *current < '0' || *current > '9') {
651 int digit = *current - '0';
658 ++current;
659 } while (current != end && *current >= '0' && *current <= '9');
665 AdvanceToNonspace(unicode_cache, &current, end)) {