Branch Coverage

blib/lib/Convert/ASN1/parser.pm
Criterion Covered Total %
branch 106 156 67.9


line true false branch
67 16 71 defined $_[1] ? :
87 311 if defined $_[0]
221 0 0 if ($Convert::ASN1::parser::yyerrflag < 3) { }
226 0 0 if ($Convert::ASN1::parser::yyn = $yysindex[$Convert::ASN1::parser::yyss[$Convert::ASN1::parser::yyssp]] and ($Convert::ASN1::parser::yyn += 256) >= 0 and $Convert::ASN1::parser::yyn <= $#yycheck and $yycheck[$Convert::ASN1::parser::yyn] == 256) { }
244 0 0 if $Convert::ASN1::parser::yyssp <= 0
252 0 0 if $Convert::ASN1::parser::yychar == 0
262 0 98 if ($Convert::ASN1::parser::yys = $ENV{'YYDEBUG'})
264 0 0 if $Convert::ASN1::parser::yys =~ /^(\d)/
279 2109 2513 if $Convert::ASN1::parser::yyn = $yydefred[$Convert::ASN1::parser::yystate]
280 1463 1050 if ($Convert::ASN1::parser::yychar < 0)
282 0 1463 if (($Convert::ASN1::parser::yychar = &yylex) < 0)
284 1365 1148 if ($Convert::ASN1::parser::yyn = $yysindex[$Convert::ASN1::parser::yystate] and ($Convert::ASN1::parser::yyn += $Convert::ASN1::parser::yychar) >= 0 and $Convert::ASN1::parser::yyn <= $#yycheck and $yycheck[$Convert::ASN1::parser::yyn] == $Convert::ASN1::parser::yychar)
294 0 1365 if $Convert::ASN1::parser::yyerrflag > 0
297 1148 0 if ($Convert::ASN1::parser::yyn = $yyrindex[$Convert::ASN1::parser::yystate] and ($Convert::ASN1::parser::yyn += $Convert::ASN1::parser::yychar) >= 0 and $Convert::ASN1::parser::yyn <= $#yycheck and $yycheck[$Convert::ASN1::parser::yyn] == $Convert::ASN1::parser::yychar)
303 0 0 unless ($Convert::ASN1::parser::yyerrflag)
307 0 0 if &yy_err_recover
318 2656 601 if exists $yystate{$label}
344 5 94 need_explicit($Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 3], $Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 2]) ? :
360 0 27 if need_explicit($Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 3], $Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 2])
464 0 39 if need_explicit($Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 2], $Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 1])
486 8 210 if $i->[1] eq "EXTENSION_MARKER"
488 12 206 if $extension
489 210 8 unless $i->[1] eq "EXTENSION_MARKER"
492 8 112 if $extension
502 0 23 if $i->[1] eq "EXTENSION_MARKER"
504 0 23 if $extension
505 23 0 unless $i->[1] eq "EXTENSION_MARKER"
508 0 23 if $extension
544 35 177 if $Convert::ASN1::parser::yyval->[4]
545 12 200 if need_explicit($Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 2], $Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 1])
553 0 21 if need_explicit($Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 2], $Convert::ASN1::parser::yyvs[$Convert::ASN1::parser::yyvsp - 1])
624 98 3159 if ($Convert::ASN1::parser::yystate == 0 and $Convert::ASN1::parser::yym == 0)
633 0 98 if ($Convert::ASN1::parser::yychar < 0)
635 0 0 if (($Convert::ASN1::parser::yychar = &yylex) < 0)
637 98 0 if $Convert::ASN1::parser::yychar == 0
640 1350 1809 if ($Convert::ASN1::parser::yyn = $yygindex[$Convert::ASN1::parser::yym] and ($Convert::ASN1::parser::yyn += $Convert::ASN1::parser::yystate) >= 0 and $Convert::ASN1::parser::yyn <= $#yycheck and $yycheck[$Convert::ASN1::parser::yyn] == $Convert::ASN1::parser::yystate) { }
697 2 96 $_[1] eq 'EXPLICIT' ? :
711 248 426 unless ref $op eq "ARRAY"
714 333 93 if (exists $base_type{$type}) { }
716 63 270 defined $op->[0] ? :
719 0 93 unless exists $tree->{$type}
722 65 28 defined $op->[2] ? :
725 4 89 if (defined $op->[0] and $ref->[0][1] == 15) { }
731 24 69 defined $op->[0] ? :
733 137 225 if length $op->[0] and $op->[1] == 10 || $op->[1] == 9 || $op->[1] == 8
736 179 247 if ($op->[6])
740 51 128 defined $op->[2] ? :
743 0 30 if ($op->[1] == 15 and defined $op->[0] and length $op->[0])
748 102 77 if (@{$op->[6];} > 1) { }
753 8 94 if ($op->[1] == 10)
759 0 4 $_->[1] == 15 ? :
26 4 length $_->[0] ? :
767 4 73 if $op->[1] == 10
796 0 98 unless my $tree = shift()
811 426 300 if ($idx < @$ops) { }
814 251 175 if (defined($var = $op->[2]))
817 0 251 if $stash->{$var}++
820 115 311 if (defined $op->[6])
821 115 0 if (ref $op->[6]) { }
0 0 elsif ($op->[1] eq 'COMPONENTS') { }
823 10 105 if (defined $var)
839 185 115 unless my $s = pop @scope
845 0 98 if length $err
854 0 0 if $seen->{$want}++
855 0 0 unless exists $tree->{$want}
857 0 0 unless @$ops == 1 and $ops->[0][1] eq 'SEQUENCE' || $ops->[0][1] eq 'SET' and ref $ops->[0][6]
864 0 0 if ($op->[1] eq "COMPONENTS")
879 71 1463 if @stacked
913 1506 1335 if defined $1
915 560 775 if (defined $2 or defined $3)
920 71 489 if ($ret eq "}")
924 71 0 if yylex() != 12
931 35 740 if (defined $4)
936 642 98 if (defined $5)
941 87 11 if (defined $6)
947 0 11 if (defined $7)
952 11 0 if (defined $8)
960 0 128 unless $pos == length $Convert::ASN1::parser::asn