Branch Coverage

blib/lib/Text/MacroScript.pm
Criterion Covered Total %
branch 151 162 93.2


line true false branch
112 3 151 if ($opts{'-comment'})
119 13 141 if ($opts{'-embedded'} or defined $opts{'-opendelim'})
127 6 148 if ($opts{'-variable'})
136 9 145 if ($opts{'-macro'})
145 10 144 if ($opts{'-script'})
154 2 152 if ($opts{'-file'})
162 1 152 if %opts
203 0 766 unless @{$self->context;}
210 0 527 unless $type == $context->type
224 14 137 if (@{$self->context;})
226 14 0 $context ? :
335 3 38 unless $input =~ / [\t ]* ( $Text::MacroScript::NAME_RE ) [\t ]* \[ /x
344 1 36 unless @args == 1
359 6 18 unless $$input_ref =~ / [\t ]* ( $Text::MacroScript::NAME_RE ) \s* /x
388 5 87 unless $input =~ / [\t ]* ( $Text::MacroScript::NAME_RE ) [\t ]* /x
394 60 27 if ($input =~ /^ \[ /x) { }
401 0 58 unless @args == 1
437 2 12 unless $input =~ / [\t ]* \[ /x
445 0 12 unless @args == 1
455 0 9 unless @args == 1
457 5 4 if ($case_arg)
481 2 8 unless $input =~ / [\t ]* \[ /x
489 0 8 unless @args == 1
553 0 354 unless my $func = $self->actions->{$match}
562 14 97 unless $arg < scalar @{$self->args;}
589 58 65 if ($self->in_embedded) { }
591 39 19 if ($input =~ /\Q$closedelim\E/) { }
603 39 26 if ($input =~ /\Q$opendelim\E/) { }
621 106 450 if defined $file
622 106 450 if $line_nr
624 52 504 if ($self->embedded) { }
640 673 642 if ($input =~ / $self->{'regexp'} /x) { }
661 329 8 if ($input =~ / (.*?) (?| (?> \\ ( [\[\]\|] ) (?{ \&Text::MacroScript::_parse_args_escape; }) ) | (?> ( \[ ) (?{ \&Text::MacroScript::_parse_args_open; }) ) | (?> ( \| ) (?{ \&Text::MacroScript::_parse_args_separator; }) ) | (?> ( \] ) (?{ \&Text::MacroScript::_parse_args_close; }) ) ) /sx) { }
674 3 5 unless @{$context->args;}
681 199 16 if ($context->open_parens == 0)
683 109 74 if $context->eat_blanks
691 5 0 unless @{$context->args;}
697 13 7 unless @{$context->args;}
704 43 42 unless @{$context->args;}
705 74 11 if ($context->open_parens == 1) { }
716 135 84 unless @{$context->args;}
717 199 20 if ($context->open_parens == 1) { }
731 34 53 unless @{$context->args;}
733 26 61 if ($input =~ /$end_text_re/mx) { }
782 224 19 if (not $@) { }
5 14 elsif (not $ignore_errors) { }
805 11 10 if (exists $self->variables->{$name})
857 140 123 if ($self->is_script->{$name}) { }
875 17 14 if (exists $self->macros->{$name})
893 48 48 unless ($namesonly)
894 8 40 if ($body =~ /\n/) { }
913 48 48 if ($output_ref) { }
931 8 8 wantarray ? :
933 8 8 if wantarray
942 64 32 if !!$self->is_script->{$name} == !!$is_script
945 16 16 wantarray ? :
947 16 16 if wantarray
990 1 35 unless $file
993 4 31 unless open my $fh, $file
998 8 23 if (not defined $output_ref) { }
1 22 elsif (ref $output_ref eq 'SCALAR') { }
17 5 elsif (ref $output_ref eq 'ARRAY') { }
5 0 elsif (ref $output_ref eq 'GLOB') { }
1019 45 50 if $line ne ""
1022 0 26 unless close $fh
1030 17 7 wantarray ? :
1032 16 2 if wantarray
1066 39 12 if (!!$is_script == !!$self->is_script->{$name})
1076 2 14 if $self->comment
1107 4 15 if ($which eq '-variable') { }
3 12 elsif ($which eq '-macro') { }
11 1 elsif ($which eq '-script') { }
1124 4 12 if ($which eq '-variable') { }
4 8 elsif ($which eq '-macro') { }
5 3 elsif ($which eq '-script') { }
1142 2 10 if ($which eq '-variable') { }
2 8 elsif ($which eq '-macro') { }
3 5 elsif ($which eq '-script') { }
1160 8 19 if ($which eq '-variable') { }
8 11 elsif ($which eq '-macro') { }
8 3 elsif ($which eq '-script') { }