|  line  | 
 true  | 
 false  | 
 branch  | 
 
| 
43
 | 
 0  | 
 182  | 
 if ($self->{'_args'}{'core'})
  | 
 
| 
44
 | 
 0  | 
 0  | 
 if ($mod =~ /\A(experimental|Scalar::Numeric::Util|Scalar::Util::Numeric::PP)\z/) { }
  | 
 
| 
 | 
 0  | 
 0  | 
 elsif ($mod =~ /\A(warnings|List::Util)\z/) { }
  | 
 
| 
53
 | 
 0  | 
 182  | 
 if ($self->{'_args'}{'pp'})
  | 
 
| 
54
 | 
 0  | 
 0  | 
 if ($mod =~ /\A(List::Util|Scalar::Numeric::Util)\z/) { }
  | 
 
| 
 | 
 0  | 
 0  | 
 elsif ($mod =~ /\A(experimental|warnings|Scalar::Util::Numeric::PP)\z/) { }
  | 
 
| 
63
 | 
 0  | 
 182  | 
 if ($self->{'_args'}{'core_or_pp'})
  | 
 
| 
64
 | 
 0  | 
 0  | 
 if ($mod =~ /\A(Scalar::Numeric::Util)\z/) { }
  | 
 
| 
 | 
 0  | 
 0  | 
 elsif ($mod =~ /\A(experimental|warnings|List::Util|Scalar::Util::Numeric::PP)\z/) { }
  | 
 
| 
76
 | 
 182  | 
 48  | 
 unless ($mod ~~ $self->{'_modules'})
  | 
 
| 
79
 | 
 124  | 
 58  | 
 if ($mod =~ /\A(use|no) (\S+)/) { }
  | 
 
| 
 | 
 58  | 
 0  | 
 elsif ($mod =~ /\A\w+(::\w+)*\z/) { }
  | 
 
| 
94
 | 
 100  | 
 0  | 
 unless (exists $self->{'_vars'}{$var})
  | 
 
| 
189
 | 
 98  | 
 6  | 
 if $self->{'_args'}{'validate_result'}
  | 
 
| 
190
 | 
 0  | 
 6  | 
 if $self->_needs_eval
  | 
 
| 
193
 | 
 0  | 
 24  | 
 unless $self->section_empty($_)
  | 
 
| 
201
 | 
 0  | 
 1338  | 
 unless $ks->{$section}
  | 
 
| 
206
 | 
 8  | 
 358  | 
 if ($self->{'_meta'}{'result_naked'}) { }
  | 
 
| 
262
 | 
 798  | 
 1808  | 
 unless (exists $self->{'_codes'}{$section})
  | 
 
| 
265
 | 
 798  | 
 0  | 
 if $self->_known_sections->{$section}{'order'}
  | 
 
| 
271
 | 
 0  | 
 2606  | 
 if ($self->{'_args'}{'debug'})
  | 
 
| 
276
 | 
 0  | 
 0  | 
 $self->{'_cur_handler'} ? :
  | 
 
| 
291
 | 
 2804  | 
 1772  | 
 if $self->section_empty($s)
  | 
 
| 
292
 | 
 1094  | 
 678  | 
 unless &$crit("section", $s)
  | 
 
| 
296
 | 
 0  | 
 4015  | 
 if $l->[0] < 0
  | 
 
| 
299
 | 
 0  | 
 4015  | 
 if (defined $l->[2])
  | 
 
| 
301
 | 
 0  | 
 0  | 
 if $num_ws < 1
  | 
 
| 
387
 | 
 94  | 
 349  | 
 if $order > $ks->{'ACCEPT_ARGS'}{'order'} and $order < $ks->{'CALL'}{'order'}
  | 
 
| 
398
 | 
 106  | 
 337  | 
 if $order > $ks->{'CALL'}{'order'} and $order < $ks->{'CLOSE_SUB'}{'order'}
  | 
 
| 
429
 | 
 4  | 
 0  | 
 if ($v->{'tx'} and $v->{'tx'}{'req'})
  | 
 
| 
466
 | 
 100  | 
 8  | 
 if ($v eq 'hash') { }
  | 
 
| 
 | 
 2  | 
 6  | 
 elsif ($v eq 'hashref') { }
  | 
 
| 
 | 
 6  | 
 0  | 
 elsif ($v =~ /\Aarray(ref)?\z/) { }
  | 
 
| 
467
 | 
 94  | 
 6  | 
 if $opt_va
  | 
 
| 
471
 | 
 2  | 
 0  | 
 if $opt_va
  | 
 
| 
475
 | 
 2  | 
 4  | 
 $1 ? :
  | 
 
| 
476
 | 
 2  | 
 4  | 
 if ($ref)
  | 
 
| 
477
 | 
 2  | 
 0  | 
 if $opt_va
  | 
 
| 
485
 | 
 0  | 
 12  | 
 unless defined $as->{'pos'}
  | 
 
| 
488
 | 
 0  | 
 12  | 
 unless $pos >= 0
  | 
 
| 
490
 | 
 0  | 
 12  | 
 if ($as->{'slurpy'} // $as->{'greedy'}) { }
  | 
 
| 
491
 | 
 0  | 
 0  | 
 if ($ref) { }
  | 
 
| 
497
 | 
 4  | 
 8  | 
 if ($ref) { }
  | 
 
| 
510
 | 
 2  | 
 106  | 
 if ($value eq 'hashref') { }
  | 
 
| 
 | 
 4  | 
 102  | 
 elsif ($value eq 'array') { }
  | 
 
| 
 | 
 2  | 
 100  | 
 elsif ($value eq 'arrayref') { }
  | 
 
| 
521
 | 
 100  | 
 8  | 
 if ($v eq 'hash') { }
  | 
 
| 
 | 
 2  | 
 6  | 
 elsif ($v eq 'hashref') { }
  | 
 
| 
 | 
 6  | 
 0  | 
 elsif ($v =~ /\Aarray(ref)?\z/) { }
  | 
 
| 
527
 | 
 2  | 
 4  | 
 $1 ? :
  | 
 
| 
528
 | 
 2  | 
 4  | 
 $ref ? :
  | 
 
| 
534
 | 
 0  | 
 12  | 
 unless defined $as->{'pos'}
  | 
 
| 
537
 | 
 0  | 
 12  | 
 unless $pos >= 0
  | 
 
| 
539
 | 
 0  | 
 12  | 
 if ($as->{'slurpy'} // $as->{'greedy'}) { }
  | 
 
| 
542
 | 
 4  | 
 8  | 
 $ref ? :
  | 
 
| 
573
 | 
 0  | 
 78  | 
 unless $v
  | 
 
| 
581
 | 
 76  | 
 2  | 
 if ($opt_va)
  | 
 
| 
584
 | 
 72  | 
 4  | 
 if $prefix eq ""
  | 
 
| 
599
 | 
 8  | 
 100  | 
 if ($argterm =~ /^%\{\s*(.+)\s*\}/) { }
  | 
 
| 
 | 
 100  | 
 0  | 
 elsif ($argterm =~ s/^%/\$/) { }
  | 
 
| 
610
 | 
 78  | 
 30  | 
 if ($sch) { }
  | 
 
| 
 | 
 2  | 
 28  | 
 elsif ($has_default_prop) { }
  | 
 
| 
612
 | 
 12  | 
 66  | 
 ref $sch eq 'ARRAY' && exists $sch->[1]{'default'} ? :
  | 
 
| 
613
 | 
 74  | 
 4  | 
 if ($opt_va)
  | 
 
| 
618
 | 
 2  | 
 72  | 
 if ($argspec->{'stream'})
  | 
 
| 
619
 | 
 0  | 
 2  | 
 unless $sch->[0] =~ /\A(str|buf|array)\z/
  | 
 
| 
622
 | 
 0  | 
 2  | 
 if $sch->[0] eq "array" and not $sch->[1]{'of'}
  | 
 
| 
656
 | 
 2  | 
 72  | 
 $argspec->{'stream'} ? :
  | 
 
| 
 | 
 2  | 
 72  | 
 $argspec->{'stream'} && $sch->[0] eq 'array' ? :
  | 
 
| 
658
 | 
 0  | 
 72  | 
 unless $cd->{'v'} == 2
  | 
 
| 
660
 | 
 72  | 
 136  | 
 unless $mod_rec->{'phase'} eq "runtime"
  | 
 
| 
670
 | 
 2  | 
 70  | 
 if ($argspec->{'stream'}) { }
  | 
 
| 
680
 | 
 2  | 
 70  | 
 if ($argspec->{'meta'})
  | 
 
| 
685
 | 
 0  | 
 2  | 
 $prefix ? :
  | 
 
| 
689
 | 
 2  | 
 70  | 
 if ($argspec->{'element_meta'})
  | 
 
| 
702
 | 
 0  | 
 2  | 
 $prefix ? :
  | 
 
| 
709
 | 
 2  | 
 70  | 
 if ($argspec->{'stream'})
  | 
 
| 
715
 | 
 8  | 
 64  | 
 if ($has_default_prop) { }
  | 
 
| 
 | 
 8  | 
 56  | 
 elsif ($has_sch_default) { }
  | 
 
| 
733
 | 
 18  | 
 88  | 
 if ($argspec->{'req'} and $opt_va)
  | 
 
| 
753
 | 
 0  | 
 4  | 
 unless $v
  | 
 
| 
779
 | 
 0  | 
 2  | 
 unless $cd->{'v'} == 2
  | 
 
| 
781
 | 
 2  | 
 4  | 
 unless $mod_rec->{'phase'} eq "runtime"
  | 
 
| 
803
 | 
 0  | 
 14  | 
 unless $v
  | 
 
| 
816
 | 
 2  | 
 16  | 
 if $k =~ /\A_/
  | 
 
| 
819
 | 
 16  | 
 0  | 
 if $k =~ /\A(
  | 
 
| 
827
 | 
 0  | 
 0  | 
 unless ($self->can($meth))
  | 
 
| 
832
 | 
 0  | 
 0  | 
 unless defined $hm->{'prio'}
  | 
 
| 
835
 | 
 0  | 
 0  | 
 unless $hm->{'v'} == $protocol_version
  | 
 
| 
857
 | 
 4  | 
 10  | 
 if ($v->{'schema'} and $opt_vr)
  | 
 
| 
860
 | 
 0  | 
 14  | 
 if ($v->{'statuses'} and $opt_vr)
  | 
 
| 
863
 | 
 0  | 
 0  | 
 if ($sv->{'schema'})
  | 
 
| 
871
 | 
 12  | 
 2  | 
 if ($opt_vr)
  | 
 
| 
875
 | 
 6  | 
 6  | 
 $v->{'stream'} ? :
  | 
 
| 
884
 | 
 2  | 
 2  | 
 if ($v->{'stream'})
  | 
 
| 
885
 | 
 0  | 
 2  | 
 unless $sch->[0] =~ /\A(str|buf|array)\z/
  | 
 
| 
888
 | 
 0  | 
 2  | 
 if $sch->[0] eq "array" and not $sch->[1]{'of'}
  | 
 
| 
909
 | 
 0  | 
 4  | 
 unless $cd->{'v'} == 2
  | 
 
| 
911
 | 
 6  | 
 10  | 
 unless $mod_rec->{'phase'} eq "runtime"
  | 
 
| 
950
 | 
 2  | 
 2  | 
 $sch->[0] eq 'array' ? :
  | 
 
| 
952
 | 
 0  | 
 4  | 
 unless $cd->{'v'} == 2
  | 
 
| 
976
 | 
 0  | 
 6  | 
 if !!$v == !!$old
  | 
 
| 
979
 | 
 2  | 
 4  | 
 if ($v) { }
  | 
 
| 
1007
 | 
 0  | 
 4  | 
 if ($value->{'tmp_dir'})
  | 
 
| 
1011
 | 
 0  | 
 4  | 
 if ($value->{'trash_dir'})
  | 
 
| 
1015
 | 
 0  | 
 4  | 
 if ($value->{'undo_trash_dir'})
  | 
 
| 
1052
 | 
 0  | 
 112  | 
 unless $sub or $sub_name
  | 
 
| 
1053
 | 
 0  | 
 112  | 
 unless $args{'meta'}
  | 
 
| 
1063
 | 
 2  | 
 108  | 
 $wrap_logs->[-1] && $wrap_logs->[-1]{'normalize_schema'} ? :
  | 
 
| 
1075
 | 
 0  | 
 4  | 
 if $meta->{'features'} and $meta->{'features'}{'validate_args'}
  | 
 
| 
1080
 | 
 2  | 
 110  | 
 if $meta->{'x.perinci.sub.wrapper.disable_validate_args'}
  | 
 
| 
1084
 | 
 2  | 
 110  | 
 if grep {$_->{'validate_args'};} @$wrap_logs
  | 
 
| 
1090
 | 
 2  | 
 110  | 
 if $meta->{'x.perinci.sub.wrapper.disable_validate_result'}
  | 
 
| 
1094
 | 
 2  | 
 110  | 
 if grep {$_->{'validate_result'};} @$wrap_logs
  | 
 
| 
1103
 | 
 110  | 
 2  | 
 if (not $sub_name or $sub)
  | 
 
| 
1107
 | 
 110  | 
 0  | 
 unless ($sub_name)
  | 
 
| 
1114
 | 
 112  | 
 0  | 
 unless ($meta_name)
  | 
 
| 
1125
 | 
 108  | 
 4  | 
 unless $opt_sin
  | 
 
| 
1132
 | 
 2  | 
 8  | 
 unless exists $meta->{$_}
  | 
 
| 
1145
 | 
 106  | 
 2  | 
 if ($args{'log'})
  | 
 
| 
1159
 | 
 102  | 
 6  | 
 if ($meta->{'args_as'} =~ /hash/)
  | 
 
| 
1174
 | 
 2  | 
 432  | 
 if $k =~ /\A_/
  | 
 
| 
1175
 | 
 0  | 
 432  | 
 if $handler_args{$k}
  | 
 
| 
1180
 | 
 0  | 
 432  | 
 unless $k =~ /\A\w+\z/
  | 
 
| 
1182
 | 
 0  | 
 432  | 
 unless ($self->can($meth))
  | 
 
| 
1185
 | 
 0  | 
 0  | 
 unless ($self->can($meth))
  | 
 
| 
1191
 | 
 218  | 
 214  | 
 unless defined $hm->{'prio'}
  | 
 
| 
1194
 | 
 0  | 
 214  | 
 unless $hm->{'v'} == $protocol_version
  | 
 
| 
1199
 | 
 10  | 
 204  | 
 if (exists $opt_cvt->{$k0})
  | 
 
| 
1201
 | 
 0  | 
 10  | 
 unless $hm->{'convert'}
  | 
 
| 
1221
 | 
 98  | 
 6  | 
 if ($needs_store_res)
  | 
 
| 
1230
 | 
 98  | 
 6  | 
 $needs_store_res ? :
  | 
 
| 
 | 
 102  | 
 2  | 
 $sn =~ /^\$/ ? :
  | 
 
| 
1231
 | 
 98  | 
 6  | 
 if ($args{'validate_result'})
  | 
 
| 
1233
 | 
 96  | 
 2  | 
 unless ($meta->{'result_naked'})
  | 
 
| 
1240
 | 
 0  | 
 96  | 
 if (log_is_trace()) { }
  | 
 
| 
1260
 | 
 0  | 
 104  | 
 if ($use_eval)
  | 
 
| 
1282
 | 
 98  | 
 6  | 
 if $needs_store_res
  | 
 
| 
1295
 | 
 52  | 
 52  | 
 if ($args{'embed'}) { }
  | 
 
| 
1299
 | 
 0  | 
 52  | 
 if ($Log_Wrapper_Code and log_is_trace())
  | 
 
| 
1302
 | 
 0  | 
 0  | 
 $ENV{'LINENUM'} // 1 ? :
  | 
 
| 
1307
 | 
 52  | 
 0  | 
 if ($args{'compile'})
  | 
 
| 
1309
 | 
 0  | 
 52  | 
 if $@ or not $wrapped
  |