Branch Coverage

blib/lib/YAML/PP/Lexer.pm
Criterion Covered Total %
branch 244 260 93.8


line true false branch
7 0 52 $ENV{'YAML_PP_TRACE'} ? :
8 1 51 $ENV{'YAML_PP_DEBUG'} || $ENV{'YAML_PP_TRACE'} ? :
137 15769 51058 if (defined $next_line)
142 11959 39099 unless (defined $line)
148 0 39099 unless $line =~ /\A( *)([^\r\n]*)([\r\n]|\z)/
152 29 39070 if ($line =~ tr/\000-\b\cK\f\cN-\037//)
183 811 41103 if @$next
186 7537 33537 unless ($next_line)
192 159 33378 unless (length $$yaml)
197 551 32827 if (substr($$yaml, 0, 1) eq "#")
202 326 32501 if (not $spaces and substr($$yaml, 0, 1) eq "%")
208 4331 28170 if (not $spaces and $$yaml =~ s/\A(---|\.\.\.)(?=$RE_WS|\z)//) { }
59 28111 elsif ($self->flowcontext and $$yaml =~ /\A[ \t]+(#.*)?\z/) { }
221 4769 27667 unless ($partial)
255 6836 97786 unless (length $$yaml)
263 1815 95971 if ($self->context)
264 165 1650 if ($$yaml =~ s/\A($RE_WS*)://)
265 12 153 if $1
270 10 1640 if ($$yaml =~ s/\A($RE_WS*(?: #.*))\z//)
277 6437 91174 if ($CONTEXT{$first}) { }
29408 61766 elsif ($COLON_DASH_QUESTION{$first}) { }
5389 56377 elsif ($ANCHOR_ALIAS_TAG{$first}) { }
9300 47077 elsif ($first eq ' ' or $first eq "\t") { }
7702 39375 elsif ($FLOW{$first}) { }
284 28869 539 if ($$yaml =~ s/\A\Q$first\E($RE_WS+|\z)//) { }
7 971 elsif ($self->flowcontext and $$yaml =~ s/\A:(?=[,\{\}\[\]])//) { }
286 8 27601 unless ($self->flowcontext or $self->block)
291 80 28781 if ($after =~ tr/\t//)
296 0 28861 unless (defined $1)
302 2822 26039 if ($$yaml =~ s/\A(#.*|)\z//)
319 5389 0 if ($$yaml =~ s/\A$REGEX//) { }
329 9300 0 if ($$yaml =~ s/\A($RE_WS+)//)
331 213 9087 if ($$yaml =~ s/\A((?:#.*)?\z)//)
343 2651 5051 if ($first eq '{' or $first eq '[') { }
2640 2411 elsif ($first eq '}' or $first eq ']') { }
354 39907 22178 if ($plain)
371 2914 36954 if ($self->flowcontext)
376 7 39861 unless ($$yaml =~ s/\A($REGEX(?:[:]+(?=\:(\s|\z)))?)//)
383 19391 20470 if ($$yaml =~ s/\A(?:($RE_WS+#.*)|($RE_WS*))\z//) { }
384 131 19260 if (defined $1) { }
398 3485 16983 unless ($partial)
405 132 19128 if ($self->flowcontext)
413 3609 16011 unless ($next_line)
420 104 15907 unless (length $$yaml)
427 630 15277 if (not $spaces and $$yaml =~ s/\A(---|\.\.\.)(?=$RE_WS|\z)//)
432 14869 408 if (length $spaces < $indent)
437 25 383 if ($$yaml =~ s/\A($RE_WS+)//)
440 11 397 unless (length $$yaml)
446 10 387 if ($$yaml =~ s/\A(#.*)\z//)
452 297 90 if ($$yaml =~ s/\A($RE2)//) { }
458 42 255 if ($$yaml =~ s/\A($RE_WS+)//)
461 245 52 unless (length $$yaml)
467 17 35 if ($$yaml =~ s/\A(#.*)\z//) { }
473 10 25 if $ws
480 90 0 if ($self->flowcontext) { }
495 242 19018 if (@lines > 1) { }
498 207 35 if ($tokens[-3] eq "EOL")
508 755 18505 if ($fetch_next)
510 610 145 unless ($partial)
525 0 1720 unless $$yaml =~ s/\A\Q$context\E//
531 215 1505 if ($$yaml =~ s/\A([1-9])([+-]?)//) { }
409 1096 elsif ($$yaml =~ s/\A([+-])([1-9])?//) { }
534 85 130 if $2
535 85 130 if $2
540 9 400 if $2
541 9 400 if $2
543 224 1496 if ($set_indent)
545 190 34 if $indent > 0
548 1662 58 if (not length $$yaml) { }
52 6 elsif ($$yaml =~ s/\A($RE_WS*(?:$RE_WS#.*|))\z//) { }
563 812 4442 unless ($next_line)
569 200 4242 if (not $spaces and $content =~ /\A(---|\.\.\.)(?=$RE_WS|\z)/)
572 1436 2806 if (length $spaces < $current_indent)
573 702 734 if (length $content) { }
574 2 700 if ($content =~ /\A\t/)
586 1572 1234 if (length $spaces > $current_indent)
587 372 1200 if ($started)
592 257 2549 unless (length $content)
595 131 126 unless ($started)
600 1382 1167 unless ($started)
625 0 4717 unless $$yaml =~ s/\A\Q$context\E//
632 850 4717 unless ($start)
633 1 849 unless ($next_line = $self->_fetch_next_line)
636 1 2 if (ref $token)
647 160 689 if (not length $$yaml) { }
3 686 elsif (not $spaces and $$yaml =~ /\A(---|\.\.\.)(?=$RE_WS|\z)/) { }
3 683 elsif (length $spaces < $indent) { }
656 3 6 if (ref $token)
666 3 6 if (ref $token)
674 95 588 if ($$yaml =~ s/\A($RE_WS+)//)
682 4708 690 if ($tokens[-3] eq $token_name)
683 4217 491 if ($start) { }
694 1805 2903 if $self->flowcontext
695 2566 2142 if (length $$yaml) { }
697 1017 1549 unless ($partial)
722 2197 3203 if ($first eq q[']) { }
724 2197 0 if ($$yaml =~ s/\A($regex)//)
729 88 2109 unless (length $$yaml)
730 24 64 if ($quoted =~ s/($RE_WS+)\z//)
741 4708 692 if ($$yaml =~ s/\A$first//)
742 4217 491 if ($start) { }
751 2 690 if (length $$yaml)
770 5584 3783 if ($$yaml =~ s/\A([^"\\ \t]+)//)
775 1475 7892 if ($$yaml =~ s/\A($RE_ESCAPES)//)
777 17 1 defined $4 ? :
95 18 defined $3 ? :
1362 113 defined $2 ? :
784 2762 6605 if ($$yaml =~ s/\A([ \t]+)//)
786 2621 141 if (length $$yaml) { }
796 82 9144 if ($$yaml =~ s/\A(\\)\z//)
801 2980 6164 if $last
812 163 163 if ($$yaml =~ s/\A(\s*%YAML[ \t]+([0-9]+\.[0-9]+))//) { }
118 45 elsif ($$yaml =~ s/\A(\s*%TAG[ \t]+(!$RE_NS_WORD_CHAR*!|!)[ \t]+(tag:\S+|!$RE_URI_CHAR+))($RE_WS*)//) { }
45 0 elsif ($$yaml =~ s/\A(\s*\A%(?:\w+).*)//) { }
815 28 135 if ($$yaml =~ s/\A($RE_WS+)//) { }
1 134 elsif (length $$yaml) { }
823 9 153 unless ($version =~ /^1\.[12]$/)
824 0 9 if ($warn eq 'warn') { }
0 9 elsif ($warn eq 'fatal') { }
844 0 45 if ($warn eq 'warn') { }
0 45 elsif ($warn eq 'fatal') { }
857 297 28 if (not length $$yaml) { }
27 1 elsif ($trailing_ws and $$yaml =~ s/\A(#.*)?\z//) { }
0 1 elsif ($$yaml =~ s/\A([ \t]+#.*)?\z//) { }
894 184781 46344 unless $name eq "CONTEXT"
896 34285 196840 if ($name eq "EOL")
921 5391 23739 if (ref $value eq 'HASH') { }
929 4714 24416 if ($push->{'name'} eq "EOL")
944 0 61 @$next ? :
947 60 1 if (my $nl = $self->next_line)